Ember.js 理解余烬路径和模型

Ember.js 理解余烬路径和模型,ember.js,Ember.js,我试图了解余烬是如何工作的,我有一个问题我不明白。我正在学习一个教程(guides.emberjs.com/v1.10.0/),我不明白为什么我在点击页面时只看到一个元素(而不使用直接链接) 我认为一些截图将有助于理解我的问题 这是我在访问“index.html#/posts/1”时得到的信息。不显示任何文章 这是我在访问“index.html#/posts”并单击左侧的Omakase上的Rails时得到的。显示一篇文章,而我的浏览器上的链接是“index.html#/posts/1”(当我刷

我试图了解余烬是如何工作的,我有一个问题我不明白。我正在学习一个教程(guides.emberjs.com/v1.10.0/),我不明白为什么我在点击页面时只看到一个元素(而不使用直接链接)

我认为一些截图将有助于理解我的问题

这是我在访问“index.html#/posts/1”时得到的信息。不显示任何文章

这是我在访问“index.html#/posts”并单击左侧的Omakase上的Rails时得到的。显示一篇文章,而我的浏览器上的链接是“index.html#/posts/1”(当我刷新时,不显示任何内容)

这是我的index.html


感谢您的帮助

当您单击链接时,模型将直接传递到路由,路由的
模型
钩子不会被触发,所以您可以看到本文。当您重新加载route
model
时,钩子被触发,出现了一些问题

使字符串
id
,因为params.post\u id是字符串

findBy
是余烬数组方法。 我会尝试:

var posts = Ember.A([{
  // as is
}]); 
下一步将ObjectController更改为Controller(ObjectController已弃用),并在模板中使用{{model.title}}而不是{{title}}:

<script type="text/x-handlebars" id="posts/post">
  {{#if isEditing}}
    {{partial "post/edit"}}
    <button {{action "doneEditing"}}>Done</button>
  {{else}}
    <button {{action "edit"}}>Edit</button>
  {{/if}}
  <h1>{{model.title}}</h1>
  <h2><small class="muted">by {{model.author}}</small></h2>
  <hr>
  <div class="intro">
    {{model.exerpt}}
  </div>
  <div class="below-the-fold">
    {{model.body}}
  </div>

{{#如果是编辑}
{{部分“发布/编辑”}
多恩
{{else}
编辑
{{/if}
{{model.title}}
通过{{model.author}}

{{model.experpt} {{model.body}


在这里工作:谢谢你的建议。但这并没有改变我的问题,我已经更新了答案。使用{{model.title}}而不是{{title}它仍然是一样的。可能是因为Ember ConsoleNext中的数据部分中没有任何内容:1)生成字符串
id
,因为
参数.post\u id
是字符串。2) 将ObjectController更改为Controller(ObjectController已被弃用)如果我只是通过
parseInt(params.post_id)
更改
params.post_id
,我会在这里重新生成您的代码,并且可以正常工作。谢谢你的帮助。
var posts = Ember.A([{
  // as is
}]); 
<script type="text/x-handlebars" id="posts/post">
  {{#if isEditing}}
    {{partial "post/edit"}}
    <button {{action "doneEditing"}}>Done</button>
  {{else}}
    <button {{action "edit"}}>Edit</button>
  {{/if}}
  <h1>{{model.title}}</h1>
  <h2><small class="muted">by {{model.author}}</small></h2>
  <hr>
  <div class="intro">
    {{model.exerpt}}
  </div>
  <div class="below-the-fold">
    {{model.body}}
  </div>