2014-08-29 28 views
0

我有一個模型錯誤:沒有模型被發現的關係

Group = DS.Model.extend({ 
    name: DS.attr('string', {defaultValue:"new group"}), 

    founder: DS.belongsTo('user', {async: true, inverse: 'groups'}), 
    members: DS.hasMany('user', {async: true, inverse: 'group'}), 
}); 

當我加載它,我從服務器響應與

{ 
    "group":{ 
    "_id":"53ff8d82588266c710cf7a6c", 
    "founder":"53fc31ac739be05911b94810", 
    "members":[], 
    "name":"new group" 
    }, 
    "members":[] 
} 

導致的錯誤:沒有模型被發現的'member'

我不明白爲什麼它試圖找到一個叫做member的模型,我指定成員是用戶關係,那爲什麼?

回答

0

繼堆棧跟蹤我發現,錯誤的地方開始圍繞行3937:var type = store.modelFor(typeName);

我添加了一個斷點,並開始跟蹤

我注意到,這段代碼在前面的迭代響應單個化的作爲模型類型的線'members''member'

我意識到,ember-data可能期望的響應不包含關係名稱,而是要加載的模型類型。所以我改變了回覆用戶而不是成員,它的工作。

因此很明顯的響應應該包含模型不是關係,這是從灰燼導誤導,因爲本例中的關係模型而得名(以發表評論)