1
在Rails 4.0后端我有以下几点:自我指涉的关系(用户的朋友)在烬数据
class User < ActiveRecord::Base
has_many :friendships, dependent: :destroy
has_many :friends, through: :friendships
class Friendship < ActiveRecord::Base
belongs_to :user
belongs_to :friend, class_name: User
end
我想用户的好友列表传递到JSON,所以我写了一个串行:
class UserSerializer < ActiveModel::Serializer
embed :ids, include: true
has_many :friends, include: true
在余烬边,我想用下面的User
模型加载JSON:
Nektere.User = DS.Model.extend
friends: DS.hasMany('user')
但是这给了我一个错误
Assertion failed: No model was found for 'friend'
Uncaught TypeError: Cannot set property 'typeKey' of undefined
它问我要Friend
模型,而是一个Friend
是User
。我猜我需要告诉烬数据friends
阵列实际上是User
记录数组,但如果friends: DS.hasMany('user')
不这样做,那么我不知道如何。如何正确加载这个数据结构到烬中?
感谢您的答复!这似乎是在JSON中装载一个'users'数组,对应'user'对象中的'friend_ids'。它看起来像烬数据正确阅读这个,但我需要更彻底地测试它。我很好奇如果我需要加载两个不同的用户数组,例如':friends'和':followers',这将如何工作?我不能有两个名为'users'的数组,我可以吗? – xph