目前我通过执行以下操作构建 JSON 对象:
@users = User.all
@users.each do |user|
@userlist << {
:id => user.id,
:fname => user.fname,
:lname => user.lname,
:photo => user.profile_pic.url(:small)
}
end
我的挑战是我现在想包括来自@contacts
表的字段集与User
model.
我尝试做
@users = User.all
@contacts = current_user.contacts
@users << @contacts
但这没有用。将两个相似的模型组合成一个 JSON 对象的最佳方法是什么?
json = User.all( :include => :contacts).to_json( :include => :contacts )
Update
抱歉,让我对您正在做的事情给出更完整的答案......
@users = User.all( :include => :contacts )
@userlist = @users.map do |u|
{ :id => u.id, :fname => u.fname, :lname => u.lname, :photo => u.profile_pic.url(:small), :contacts => u.contacts }
end
json = @userlist.to_json
另一个更新
好吧,忘了我吧——我今天过得很糟糕,完全没有抓住你问题的重点。您需要一些包含两组不相关数据的 JSON。所有用户,and仅适用于当前用户的联系人。
然后你想为此创建一个新的哈希,像这样......
@users = User.all
@userlist = @users.map do |u|
{ :id => u.id, :fname => u.fname, :lname => u.lname, :photo => u.profile_pic.url(:small) }
end
json = { :users => @userlist, :contacts => current_user.contacts }.to_json
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)