基于另一个属性为当前控制器重新加载模型的最佳方法是什么?
例如:我有一个帖子控制器.作者只能有一个帖子.如果currentAuthor属性发生更改,我想重新加载post创建表单.
我试过这样的方式:
App.PostEditController = Ember.ObjectController.extend
modelReloadNeeded: Ember.observer((obj, keyName) ->
postId = @get('currentAuthor').get('post_id')
if postId?
@set('model', @store.find('post', postId))
, 'currentAuthor.post_id'
)
Run Code Online (Sandbox Code Playgroud)
它重新加载所有东西,但不是真正的模型,而是承诺.而且它看起来不像是一个惯用的Ember解决方案.
也许有更好的方法来解决这个问题?
使用ember-cli生成项目MODEL_FACTORY_INJECTIONS时,默认情况下您将启用该项目.
但由于某种原因,它会破坏夹具装载:
适配器/应用
export default DS.FixtureAdapter.extend({});
Run Code Online (Sandbox Code Playgroud)
车型/笔记
var Note = DS.Model.extend({
text: DS.attr('string'),
});
Note.FIXTURES = [
{
id: 1,
text: 'text1'
},
];
export default Note;
Run Code Online (Sandbox Code Playgroud)
路线/指数
export default Ember.Route.extend({
model: function() {
return this.store.find('note');
}
});
Run Code Online (Sandbox Code Playgroud)
随着MODEL_FACTORY_INJECTIONS我得到
加载路径时出错:错误:断言失败:无法找到模型类型注释的固定装置@ model:注意:
没有一切按预期工作.
也许我错过了什么?或者这只是一个错误?