无法显示烬数据

问题描述:

我USNG Ember.js 1.0.0 RC1和灰烬数据修订12无法显示烬数据

模型我的后背和Ember.js作为UI PHP修身框架。我想从REST后端加载数据并将其列在模板中。

因此,这里是我的代码:

window.App = Ember.Application.create(); 

// Store 
App.Store = DS.Store.extend({ 
    revision: 12, 
}); 

// Adaper 
DS.RESTAdapter.reopen({ 
    url: '/slim' 
}); 

// Router 
App.Router = Ember.Router.extend(); 
App.Router.map(function(){ 
    this.route('ads', {path: '/ads'}); 
}); 

// Ad model 
App.Ad = DS.Model.extend({ 
    title: DS.attr('string') 
}); 

// AdsRoute 
App.AdsRoute = Ember.Route.extend({ 
    model: function(){ 
     return App.Ad.find(); 
    } 
}); 

现在,我尝试从我的模板商店渲染我的模型:从后端

<script type="text/x-handlebars" data-template-name="ads"> 
<h1>Ads</h1> 
{{#each controller}} 
    {{title}} 
{{/each}} 
</script> 

响应:

{ads:[{title:"Title" },{ title:"other title" }]} 

但商店中没有显示任何内容。我的问题是我应该如何在控制器模板中使用控制器中的数据?

Thx for reading!

SOLUTION

我不得不添加各地的JSON响应

{"ads":[{ "title":"Title" },{ "title":"other title" }]} 
+0

这是一个棘手的错误,因为控制台中没有错误消息。非常感谢。在JSON周围添加引号解决了它! – 2013-07-18 19:38:33

看起来,如果内容是永远不会得到在控制器中设置的报价。 我怀疑如果你添加setupController挂钩到你的App.AdsRoute它会把项目放入控制器。

setupController: (controller, model) -> 
     controller.set('content', model) 

我包括我正在使用的修订版11应用程序的实际工作代码。所以模型名称不会排队,但代码正在工作。

App.ChecksIndexController = Ember.ArrayController.extend 
    content: [] 

App.ChecksIndexRoute = Ember.Route.extend 
    enter: -> 
    console?.log("Checks Index Route a") 
    model: -> 
    App.Check.find() 
    setupController: (controller, model) -> 
    @._super() 
    console?.log('route setupController') 
    console?.log(model) 
    controller.set('content', model) 


{{#each item in controller }} 
     {{#linkTo checks.show item }} 
      <div class="well well-small well-trim-border"> 
      <h4>{{item.description}}</h5> 
      </div> 
     {{/linkTo}} 
     {{/each}} 

我回来的模型 - 包括一个id。

{"checks":[{"id":"512e0c6b1769d0805700000b","description":"xyz"}]} 
+0

谢谢@nrion快速回答。根据文档setupController设置'内容'自动模型,除非被覆盖。不过,我改变了你的代码。不幸的是它不起作用:(我很确定它是由于修订版本12. RC1罚款11,但12不起作用!是否有任何有关ember-data?文档或API什么? – greg 2013-03-16 13:17:23

+0

如果您致电controller.set('content',App.Ad.find())直接在setupController钩子中?我知道这不是你想在生产中做到这一点,而是为了排除故障?目前还没有试图使用12版本,所以这可能是问题的一部分 – nrion 2013-03-16 13:24:54

+0

Thx再次为你的时间,nrion。当我这样做时,没有什么变化当我尝试打印出内容时,我得到:“ greg 2013-03-16 13:35:04

一件事是尝试输出模板中的一个小写的“称号”,为你的模型的属性定义为一个小写的“T”开始。

+0

谢谢你回答米哈尔。我承认我的模板不够清晰。我只想为我的收藏中的每件物品打印任何东西。我编辑代码来表达我的目标。 – greg 2013-03-16 13:23:21