ruby-on-rails – 使用不同查询响应html和json的一个Rails路由

我的控制器中有一个简单的索引操作,它提供html和json格式.

def index
  @records = Model.all

  respond_to do |format|
    format.html
    format.json { render json: @records }
  end
end

我最近重做了由JSON端点支持的AngularJS中的HTML视图.我从日志中注意到,在为此操作加载HTML时,即使我已经设置了AngularJS来在加载时在JSON端点处获取记录,仍然在为HTML视图创建查询.

我不确定处理这个问题的最佳方法.我想能够不查询我是否只是回应HTML.如果格式是JSON,显而易见的方法是仅运行查询,但我感觉这不是最好的方式.

最佳答案 你可以简单地解决这个问题

def index
  respond_to do |format|
    format.html
    format.json { 
      @records = Model.all
      render json: @records 
    }
  end
end
点赞