1
Ember很有趣,但文檔確實很薄。如何使用Ember Data創建新記錄並立即將其添加到其他記錄上的hasMany屬性?
我成功顯示Ember數據記錄的層次結構,現在我想允許用戶在父(部門)的上下文中添加新的子項(人員)。
我原以爲下面的代碼可以工作,但事實並非如此。當newPerson被添加到數據存儲中時,該人員不會被添加到部門,並且在控制檯中出現錯誤。這個問題的獎金將是如何解釋Ember Data錯誤的信息,因爲它們非常不透明。我甚至無法弄清楚Google的哪部分內容。這裏我認爲相關部分的錯誤是Promise.prototype._onError
。
addPerson(deptid) {
var newID = Math.random().toString(16).slice(2);
var newPerson = this.store.createRecord('person', {
name: "Person Name",
id: newID,
devices: []
}).save();
this.store.find('department', deptid).then(function (department) {
department.pushObject(newPerson);
});
}
Doh!當然。您的建議消除了錯誤,但創建了一個新的錯誤。這個控制檯的輸出包括諸如「assertPolymorphicType」和「notifyRecordRelationshipAdded」之類的東西。但是我的部門模型肯定包含了'窺視:DS.hasMany('person')'。 – ed94133
哎呀,我們試圖添加承諾(從保存方法返回),而不是記錄。 – Kingpin2k
修好了!謝謝! – ed94133