0

我对 Ember 很陌生,正在努力解决这个问题。

我有一个模型,Huddle以及一个关联的控制器,HuddlesController. 有一个模板huddles.hbs.erb,其中包含一个{{outlet}}. 下面templates/huddles/有两个文件,grid.hbs.erb 和 list.hbs.erb。这些被渲染到huddles.hbs.erb.

现在huddles.hbs.erb,我可以使用如下所示的 each 块:

{{#each huddle in controller}}
  {{huddle.name}}
{{/each}}

这可以按预期工作,迭代 Huddles 的集合。

list.hbs.erb但是,如果我在or中调用相同的代码,则会grid.hbs.erb收到以下错误:

Uncaught Error: assertion failed: an Ember.CollectionView's content must implement Ember.Array. You passed <(generated huddles.grid controller):ember405>

看来我不再在正确的范围内了!如何访问父控制器中的集合(HuddlesController从 扩展Ember.ArrayController)?

提前致谢!

4

1 回答 1

0

根据错误消息,您应该有一个名为HuddlesGridControllerwhich extends的控制器Em.ArrayController。每条路由都有自己的控制器、视图和模板。这意味着HuddlesController在资源路线中使用(HuddlesRoute我假设),但您是子路线(HuddlesRoute我也在假设)。

于 2013-04-24T20:35:57.873 回答