我有3个模型。带有belongsTo的模型中的计算属性返回undefined
// Product
export default DS.Model.extend({
content: DS.attr('string'),
creator: DS.belongsTo('user')
});
// User
export default DS.Model.extend({
email: DS.attr('string'),
products: DS.hasMany('product'),
person: DS.belongsTo('person'),
fullName: Ember.computed(function() {
return `${this.get('person.firstname')} ${this.get('person.surname')}`;
})
});
// Person
export default DS.Model.extend({
firstname: DS.attr('string'),
surname: DS.attr('string'),
users: DS.hasMany('user')
});
我尝试在句柄中使用它。
{{#each products as |product|}}
{{product.creator.fullName}}
{{/each}}
正如你可以看到有在User
模型计算的属性。但它总是返回undefined undefined
,因为this.get('person.firstname')
和this.get('person.surname')
返回未定义。
Ember检查器显示每个模型的数据。任何想法如何解决这个问题?
似乎你想'人名'fullName',而不是'用户'?不是你的问题,但... –
事实上,这会导致相同的错误。 – Fabic