Ember很有趣,但文档确实很薄。
我正在成功显示Ember数据记录的层次结构,现在我想允许用户在父(部门)的上下文中添加新的子(人)。
我原以为下面的代码会起作用,但事实并非如此。虽然newPerson已添加到数据存储中,但该人员未添加到部门中,我在控制台中收到错误。此问题的奖励将是关于如何解释Ember Data错误的信息,因为它们非常不透明。我甚至无法弄清楚谷歌的哪一部分。在这里,我认为错误的相关部分是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);
});
}
答案 0 :(得分:1)
我怀疑你想pushObject
记录department
。对于数组,pushObject
相当于push
,department
是单独的记录。您可能想要获取部门记录中的hasMany
集合并在其上使用`pushObject。
var newPerson = this.store.createRecord('person', {
name: "Person Name",
id: newID,
devices: []
});
newPerson.save();
this.store.find('department', deptid).then(function (department) {
department.get('peeps').pushObject(newPerson);
});