Javascript 从未调用Ember控制器模型挂钩

Javascript 从未调用Ember控制器模型挂钩,javascript,ember.js,Javascript,Ember.js,使用{{render“modelHandler”model}时,不会调用相应控制器的model函数 此处转载: 我90%肯定这是一个错误。在我发布到github之前,我会在这里发布这篇文章,以防有明显的遗漏或“我做错了”。在任何一种情况下,如果您能为我指出正确的方向 用例(为什么我首先需要它) 我使用{render}来包含AddressAdd模板,为此我需要扩展模型以包含状态列表和默认状态。虽然我可以将状态加载到父模型(比如属性或联系人卡),但由于许多视图都包含AddressAdd,我希望避免每

使用
{{render“modelHandler”model}
时,不会调用相应控制器的
model
函数

此处转载:

我90%肯定这是一个错误。在我发布到github之前,我会在这里发布这篇文章,以防有明显的遗漏或“我做错了”。在任何一种情况下,如果您能为我指出正确的方向

用例(为什么我首先需要它)

我使用{render}来包含AddressAdd模板,为此我需要扩展模型以包含状态列表和默认状态。虽然我可以将状态加载到父模型(比如属性或联系人卡),但由于许多视图都包含AddressAdd,我希望避免每次都手动添加下拉列表的信息


因此,如果您碰巧知道除了{{render}和控制器的模型挂钩之外,还有更好的实现方法,请告诉我

这不是一个bug,模型钩子只有在您访问与该路由相关联的url时才会触发,并且它位于路由上,而不是控制器上。此外,如果控制器上有模型,则它应该是ObjectController(除非它是数组,否则它就是ArrayController)

调用render时,表示要使用特定上下文渲染特定模板


我会在您所在的路由下面创建一个路由,并使用一个链接,指向没有模型的路由,这将导致应用程序模板中的模型挂钩触发。

{{ render 'foo' bar }}
应用程序控制器中不应该有一个
bar
属性吗

App.ApplicationController = Ember.Controller.extend({
  bar: {isBar: 'yup'}
});

结果证明,这是一个深夜工作的案例,忘记了模型挂钩在路线上,而不是控制器。谢谢你!