[英]Another Dynamic Segments issue in Ember.js
我的角色资源上有一个嵌套的资产资源。 我已经阅读了所有SO,我应该能够使用this.modelFor
来获取关联的父模型,但是当我使用它时,我的结果是不确定的。 我要去哪里错了?
models / character.js
export default DS.Model.extend({
assets: DS.hasMany('asset', { async: true }),
...
});
模型/asset.js
export default DS.Model.extend({
character: DS.belongsTo('character', { async: true }),
...
});
router.js
Router.map(function() {
this.resource('characters', function () {
this.route('show', { path: '/:character_id'} , function() {
this.resource('assets', function() {
});
});
});
...
});
路线/字符/show.js
export default Ember.Route.extend({
model: function(params) {
return this.store.find('character', params.character_id);
}
});
路线/资产/index.js
export default Ember.Route.extend({
model: function() {
return this.modelFor('character').get('assets');
}
});
模板/字符/show.hbs
<div class="row">
<h2>{{name}}</h2>
{{#link-to 'assets' this}}Assets{{/link-to}}
</div>
由于this.modelFor('character')返回未定义:
Error while processing route: assets.index Cannot read property 'get' of undefined TypeError: Cannot read property 'get' of undefined
我的路线符合我的期望,为我提供了/ chararcters /:charater_id:/ assets路线:
您只能获取具有模型的路线的模型。 在您的路线布局中,只有character.show路线实际上具有模型。 这就是您应该尝试从中获取模型的路线
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.