Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ember.js 余烬模板不显示任何数据_Ember.js_Handlebars.js_Ember Rails - Fatal编程技术网

Ember.js 余烬模板不显示任何数据

Ember.js 余烬模板不显示任何数据,ember.js,handlebars.js,ember-rails,Ember.js,Handlebars.js,Ember Rails,我刚开始使用Ember.js,我在后端使用Ember rails。我遇到的问题是,我得到了一个项目列表,但没有数据呈现在我的模板中 router.js.coffee App.Router.map (match)-> # match('/').to('index') @resource "stories" App.StoriesRoute = Ember.Route.extend model: -> App.Story.find() 故事_route.js.咖啡 A

我刚开始使用Ember.js,我在后端使用Ember rails。我遇到的问题是,我得到了一个项目列表,但没有数据呈现在我的模板中

router.js.coffee

App.Router.map (match)->
# match('/').to('index')
   @resource "stories"
App.StoriesRoute = Ember.Route.extend
model: -> 
    App.Story.find()
故事_route.js.咖啡

App.Router.map (match)->
# match('/').to('index')
   @resource "stories"
App.StoriesRoute = Ember.Route.extend
model: -> 
    App.Story.find()
故事。把手

<h1>Stories</h1>

<ul>
{{#each story in controller}}
      <li>{{story.title}} A</li>
{{else}}
      <li>There are no stories.</li>
{{/each}}
</ul>

{{outlet}}
编辑:

我能够得到正确的模板渲染,只是数据是空的

以下是HTML的外观:

<div id="ember295" class="ember-view">
   <h1>Stories</h1>
   <ul>
   <script id="metamorph-2-start" type="text/x-placeholder">
   </script>
   <script id="metamorph-4-start" type="text/x-placeholder">
   </script>
      <li>
         <script id="metamorph-5-start" type="text/x-placeholder">
         </script>
         <script id="metamorph-5-end" type="text/x-placeholder">
         </script>
         A
      </li>
    <script id="metamorph-4-end" type="text/x-placeholder">
    </script>
    <script id="metamorph-2-end" type="text/x-placeholder">
    </script>
  </ul>
  <script id="metamorph-3-start" type="text/x-placeholder">
  </script>
  <script id="metamorph-3-end" type="text/x-placeholder"></script>
</div>

故事
  • A.

如果
故事
是您的第一条路线,可在
“/”
访问,则您可以定义如下路径:

App.Router.map () ->
  @resource('stories', {path: '/'})
您可以定义索引路由并从那里重定向,如:

App.IndexRoute = Ember.Route.extend
  redirect: ->
    @transitionTo('stories')
这里有一幅作品展示了第二个概念

编辑

我猜您现在的问题是,如果结果包含一组记录,您需要删除JSON中的附加
故事
级别,结果如下:

{
  "stories":[
    {
      "id":1,
      "title":"Test",
      "description":"This is a test story"
    }
  ]
}
对于单个记录,例如
/stories/123
,您的JSON应该如下所示:

{
  "id":1,
  "title":"Test",
  "description":"This is a test story"
}

希望它能有所帮助

我编辑了我的答案,反映了一个更简单的解决方案,看一看……我想现在的问题是你的JSON,你能改变API响应服务器端并删除额外的
故事
级别吗?再次编辑我的答案以涵盖你的
新问题:)正确的模板正在呈现,只是没有显示任何数据。它似乎知道数组中只有一个项,因此创建了一个
  • 。是的,JSON格式导致了这个问题。我正在使用RABL,因此在rab_init.rb中,我添加了
    config.include_json\u root=false
    。谢谢