关于ember.js:ember-cli / pod:嵌套资源/模板

ember-cli / pod: Nesting resources/templates

我已经阅读了各种stackoverflow线程和其他论坛条目,但无法弄清楚如何使用ember-cli 0.1.12和pod结构来使用嵌套的资源/模板。

版本:

  • 灰烬:1.8.1(也尝试过1.9.1)
  • 灰烬数据:1.0.0-beta.12
  • 把手:1.3.0(也尝试过2.0.0)
  • 的jQuery:1.11.2

我的router.js(不变,cli创建它,仅用于演示):

1
2
3
4
5
Router.map(function() {
    this.resource("controls", function() {
    this.route("statements");
    this.resource("handles", function() {});
});

情况:

  • 除了ember在创建的template.hbs中生成命令和文本标记外,没有其他修改。
  • 资源"控件":模板按预期显示
  • 路线"控件/语句":模板按预期显示
  • 根本不呈现资源"控件"下的资源"句柄"。
  • "控件/句柄"之后的后续路由也不起作用。
  • 当我调用http:// localhost:4200 / controls / handles时,ember检查器仅在视图树中列出"应用程序"和"控件"。在余烬检查器路线部分中,它列出:handles.index
    HandlesIndexRoute发送到控制台
    HandlesIndexController发送到控制台
    处理/索引
    / controls / handles

我尝试过:

  • 切换余烬和车把版本-无效
  • 不使用Pod结构-无效
  • 在handles pod文件夹中手动添加index.hbs模板-无效

我觉得我在这里没有基本要点。
你能帮我吗?

谢谢你,
曼努埃尔


我无法帮助您解决广告连播问题,但可以尝试其他方面。
您的嵌套资源的本质是什么?

我期望的网址是:" .. controls /:control_id / handles"。

我会这样写:

1
2
3
4
5
6
7
this.resource('controls', function() {
  this.route('statements');
  this.route('show', { path: ':control_id' }, function() {
    this.resource('handles', function() {
    });
  });
});

尼克