我不熟悉在ember中定义关系。请帮帮我。
这就是我建立关系的方式。
App.Post= DS.Model.extend({
comment: DS.belongsTo('comment'),
name: DS.attr('string')
});
App.Comment =DS.Model.extend({
post: DS.belongsTo('Post'),
value: DS.attr('string')
});
App.PostSerializer = DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, {
attrs: {
comments: {embedded: 'always'}
}
});
保存帖子模型:
var model = this.store.createRecord('post');
model.get('comments').pushObject(this.store.createRecord('comment'));
model.setProperties({
name: 'test'
});
model.save();
每当我尝试保存帖子模型时,我都会收到以下错误:
错误:断言失败:您必须在传递给id
的对象中包含push
App.Comment
我使用嵌入式记录可能有误。请帮我解决这个问题。提前谢谢。
答案 0 :(得分:0)
我们通过将两个部分连接在一起的表格来实现hasMany。 对于你的例子,它看起来像这样。
App.Post= DS.Model.extend({
name: DS.attr('string')
});
App.Comment =DS.Model.extend({
value: DS.attr('string')
});
App.CommentPost = DS.Model.extend({
post: DS.belongsTo('post'),
comment: DS.belongsTo('comment')
});