0
因此,我想回到json
响应中我的@neighborhood
对象的:id, :name
属性。如何让我的控制器在json响应中仅返回一个对象的两个属性?
这是我在我的控制器动作:
def autocomplete_neighborhood_name
@neighborhood = Neighborhood.select("id, name").where("name LIKE ?", "#{params[:name]}%").order(:name).limit(10)
respond_to do |format|
format.json { @neighborhood :only => [:id, :name]}
end
end
我得到的format.json...
行语法错误。
我该如何做到我想要的?
谢谢。
编辑1
我真正的目标是尝试并重构这个代码,使用format.json
和使用Rails的3.2.x中较新的方法:
def autocomplete_neighborhood_name
respond_with(
Neighborhood.
select("id, name").
where("name LIKE ?", "#{params[:name]}%").
order(:name).
limit(10).
as_json(:only => [:id, :name]))
end
如果您有任何其他建议对于我如何更好地做到这一点,我会很感激反馈。
我刚刚更新的问题...看到旧的代码我重构 - 因为我会如何使我的版本更好任何其他建议? – marcamillion 2013-03-06 08:53:59
其实......没关系......你的解决方案奇妙地工作。谢谢! – marcamillion 2013-03-06 08:55:49
很高兴我可以帮助你的朋友;) – mart1nn 2013-03-06 11:22:00