我必须阅读有关我的问题的堆栈溢出的每个问题,并且没有找到解决方案。 我对Ember和Node很新,所以请耐心等待。
服务器以这种格式响应:
{
"_id" : "53fddf59d72f9b4d3a3e164a"
"about" : [
{"from" : "foo"},
{"text" : "bar"},
... ]
}
我的模型看起来像这样:
App.About = DS.Model.extend({
from : DS.attr('string'),
text : DS.attr('string'),
...
}
适配器&串行器:
App.ApplicationAdapter = DS.RESTAdapter.extend({
host: 'http://localhost:3000'
});
App.ApplicationSerializer = DS.JSONSerializer.extend({
primaryKey: '_id'
});
我的路线:
App.AboutRoute = Ember.Route.extend({
model: function() {
return this.store.find('about');
}
});
使用把手:
<script type="text/x-handlebars" data-template-name="about">
<p>{{from}}</p>
</script>
路由将呈现,但控制台会显示错误:
DEBUG:------------------------------- ember.js:3285
DEBUG:Ember:1.3.0 ember.js:3285
DEBUG:Ember数据:1.0.0-beta.5 ember.js:3285
调试:把手:1.3.0 ember.js:3285
DEBUG:jQuery:1.10.2 ember.js:3285
DEBUG:------------------------------- ember.js:3285
生成 - &gt; route:application Object {fullName:“route:application”} ember.js:3285
断言失败:您必须在传递给id
ember.js的哈希中包含push
:3285
生成 - &gt; controller:about Object {fullName:“controller:about”} ember.js:3285
过渡到'约'
我做错了什么?!
更新
已经接受了Kingpin2k的答案,即使这不是我最终使用的确切格式。有关详细信息,请参阅注释。
答案 0 :(得分:3)
您的格式应为复数类型,以及各个记录的ID。
{
"abouts" : [
{
"from" : "foo",
"text" : "bar",
"_id" : "53fddf59d72f9b4d3a3e164a"
},
{
"from" : "foo2",
"text" : "bar2",
"_id" : "53fddf59d72f9b4d3a3e164k"
},
... ]
}