当我在控制器中调用“show”动作时,我正在寻找返回json的最佳方法。我正在使用Rails 2.3.x。
我想添加一些东西,有些东西要在返回之前从对象中删除,所以只需执行以下操作之一:
respond_to do |format|
format.json {
render :json => @object.to_json
}
end
不一定有效。我不希望暴露该对象中的所有内容。我以为我在这里有两个操作:
如果这是我正在返回的HTML,我显然只会使用.html.erb文件,并且只包含我想要的内容。但是因为我正在处理JSON,所以我似乎应该处理代码中的所有内容,甚至不处理视图文件。
思想?
答案 0 :(得分:2)
你应该看看RABL(https://github.com/nesquena/rabl)。然后你可以像这样构建你的show.json.rabl文件:
object @person
attributes :id, :name, :age
在RABL上查看此RailsCast:http://railscasts.com/episodes/322-rabl
同时结帐https://github.com/rails/jbuilder - 和RailsCast:http://railscasts.com/episodes/320-jbuilder