如何从 ember-data 中的关系访问实体?
How to access entity from relationship in ember-data?
我有两个实体用户和令牌。我使用 store.find(..) 获取令牌然后我想获取它的用户但它未定义。
// Route
export default Ember.Route.extend({
needs:['session'],
afterModel: function(token) {
console.log(token); // defined, contains token
console.log(token.get('user')); // undefined??
},
model: function (params) {
return this.store.find('token', {token: params.token});
},
serialize: function (model, params) {
return {token: model.get('token')};
}
});
// user.js
export default DS.Model.extend({
tokens: DS.hasMany('token')
});
// token.js
export default DS.Model.extend({
user: DS.belongsTo('user'),
});
当我检查 chrome ember inspector 中加载了哪些数据时,我可以看到令牌。当我点击 Belongs to
段时,有 user : <computed>
并且在再次点击后加载用户。那么如何获取token的用户呢?
您是否检查了 'params.token' 属性 具有 id 值的模型挂钩?
我有两个实体用户和令牌。我使用 store.find(..) 获取令牌然后我想获取它的用户但它未定义。
// Route
export default Ember.Route.extend({
needs:['session'],
afterModel: function(token) {
console.log(token); // defined, contains token
console.log(token.get('user')); // undefined??
},
model: function (params) {
return this.store.find('token', {token: params.token});
},
serialize: function (model, params) {
return {token: model.get('token')};
}
});
// user.js
export default DS.Model.extend({
tokens: DS.hasMany('token')
});
// token.js
export default DS.Model.extend({
user: DS.belongsTo('user'),
});
当我检查 chrome ember inspector 中加载了哪些数据时,我可以看到令牌。当我点击 Belongs to
段时,有 user : <computed>
并且在再次点击后加载用户。那么如何获取token的用户呢?
您是否检查了 'params.token' 属性 具有 id 值的模型挂钩?