我有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