我有2个模特,Kid和friend_list。对于我使用的孩子:
k = Kid.where(email: "adfadf@adfadsfa.com").first
然后,为了获取朋友列表,我输入:
k.friend_list
我得到了:
[#<FriendList _id: 5305cb6485216d2689004785, _type: nil, name: "Friends", members: ["5374a1f320db90054c0000ea", "537c63ea20db9040d2000332"], kid_id: BSON::ObjectId('5305cb6285216d2689004742'), teacher_id: nil>]
但我只需要“成员”。
我试过
k.friend_list.members,但我得到
NoMethodError: undefined method `members' for
#<Array:0x007fcf4b013138> from /Users/jeanosorio/.rvm/gems/ruby-1.9.3-p484@blabloo/gems/mongoid-2.8.1/lib/mongoid/criteria.rb:387:in
`method_missing'
我怎样才能获得成员数组?
提前致谢。
答案 0 :(得分:1)
似乎friend_list
会返回Array
的{{1}}。
您可以使用map
创建一个由FriendList
getter的值组成的新列表:
members
或者,如果您只想在每个k.friend_list.map(&:members)
# => [["5374a1f320db90054c0000ea", "537c63ea20db9040d2000332"]]
中使用一个FriendList
,则应将模型更改为单个Kid
对象。
对于当前模型,您还可以执行以下操作:
FriendList