0
在我的搜索控制器中,我使用json渲染调用进行站点搜索。我现在需要将自定义实例方法传递给JS文件。问题是,当我尝试逗号分隔的必要方法(to_json
)我得到这个错误在我的控制台:对json响应控制器动作使用多个参数
SyntaxError (/game_app/app/controllers/search_controller.rb:13: syntax error, unexpected '}', expecting =>):
app/controllers/search_controller.rb:13: syntax error, unexpected '}', expecting =>
控制器代码
def autocomplete
render json: Game.search(params[:query], fields: [{ title: :word_start }], limit: 10), Game.to_json(methods: [:box_art_url])
end
型号代码
class Game < ActiveRecord::Base
def box_art_url
box_art.url(:thumb)
end
end
使用ActiveModel序列化器或jBuilder。在您的控制器中创建复杂的JSON响应几乎不是一个好主意。 – max
我该如何去将jbuilder文件与我需要使用的javascript相互关联? –
您将使用ajax从javascript获取搜索数据作为JSON。 jBuilder的工作类似于一个视图 - 除了它生成JSON或XML而不是HTML。 – max