有这条路线从宁静的服务中获取数据
var App = Ember.Application.create({rootElement: '#planner'});
App.Store = DS.Store.extend();
App.Router.map(function(){
this.resource('home');
});
App.HomeRoute = Ember.Route.extend({
model: function(){
return Ember.$.getJSON('/api/get-planner/');
}
});
模板:
<script type="text/x-handlebars" data-template-name="home">
{{name}}
</script>
不知何故显示名称的值。我可以确认api正在返回正确的json数据。
答案 0 :(得分:1)
Ember-Data希望JSON像这样:
{
planner: {
name: 'Test'
// your data
}
}
因此,如果您的API返回此JSON:
{
name: 'Test'
}
它不会起作用。 我建议使用Ember-Model(https://github.com/ebryn/ember-model),因为它更稳定,并允许您自定义REST适配器的行为。
您的代码可能如下所示:
App.PlannerModel = Ember.Model.extend({
name: Ember.attr(),
// see the documentation of ember-model for this
});
App.PlannerModel.url = '/api/get-planner/';
App.PlannerModel.adapter = Ember.RESTAdapter.create();
App.HomeRoute = Ember.Route.extend({
model: function() {
return App.PlannerModel.find();
}
});
如果您想采用这种方法,请确保不要包含Ember-Data并使用Ember-Model。