如果我在ArrayController
中定义Ember.Route
的模型,就像这样......
model: function() {
return this.modelFor('customer').get('memberInvitation');
},
...然后当我使用createRecord
和save
创建记录时,模型不会在视图中显示新对象。
但是,当我通过过滤商店中的记录来设置模型时:
model: function() {
var customer = this.modelFor('customer');
var memberInvitationIds = customer.get('memberInvitations').mapBy('id');
var idsParam = memberInvitationIds.join(',');
return this.store.filter('member-invitation', {ids: idsParam}, function(memberInvitation) {
return !memberInvitation.get('isNew');
});
},
...然后它会更新视图。
使用hasMany
关系有没有正确的方法?如果没有,那么正确的方法是什么?
答案 0 :(得分:0)
使用这种关系应该可以正常工作。这就是为什么它不是。
关系是多态的,父类没有hasMany
关系,所以当创建memberInvitation
时hasMany
上的customer
关系没有&#39实现它。
因此,如果对关系的绑定似乎被破坏,请检查反面以确保一切正常(特别是如果您有多态关系)。