Fir*_*DoL 5 json model ruby-on-rails ruby-on-rails-3
我正在使用javascript库来构建组合框.我有要求用一个人的全名建立一个组合框,所以我的意思是名字+姓氏.
因为在数据库中这些是2个单独的字段(在我的模型中也是如此),我想知道是否有一种快速方式(而不是手动构建所有哈希对象)来"模拟"我的模型中是否存在其他字段JSON转换,因为此对象必须作为JSON数组返回,您可以在其中读取*full_name*作为键.
感谢帮助
Cha*_*nap 10
您可以通过传递:methods选项和调用来覆盖模型中的to_json方法super.这将as_json使用:methods选项调用超类的版本,以便它将使用full_name属性序列化您的模型.
class Person < ActiveRecord::Base
def as_json(options={})
options[:methods] = [:full_name]
super
end
def full_name
"#{first_name} #{last_name}"
end
end
Run Code Online (Sandbox Code Playgroud)
在你的控制器内,你可以简单地
render :json => @person
Run Code Online (Sandbox Code Playgroud)
如果您想了解可以传递给as_json方法的更多选项,请查看此文档.
http://api.rubyonrails.org/classes/ActiveModel/Serializers/JSON.html
| 归档时间: |
|
| 查看次数: |
2247 次 |
| 最近记录: |