Ember.js找不到我的模型定义

Ember.js找不到我的模型定义,ember.js,Ember.js,我正在构建一个Ember应用程序,它使用$.getJSON从服务器请求数据。 问题在于,Ember似乎无法识别我的模型,并根据服务器返回的json自动创建它(它的属性比我模型中的属性多) 余烬代码 var App = Ember.Application.create({}); App.ViewObject = DS.Model.extend({ title: DS.attr('string'), description: DS.attr('string'), Compu

我正在构建一个Ember应用程序,它使用$.getJSON从服务器请求数据。 问题在于,Ember似乎无法识别我的模型,并根据服务器返回的json自动创建它(它的属性比我模型中的属性多)

余烬代码

var App = Ember.Application.create({});

App.ViewObject = DS.Model.extend({
    title: DS.attr('string'),
    description: DS.attr('string'),
    ComputedProp: function () {
        return this.get('title') + ' - test';
    }.property('title')
});

App.ViewObjectRoute = Ember.Route.extend({
    model: function () {
        //served JSON structure is {title:'test',description:'abc',price:20,...}
        return $.getJSON(myServerUrl);
    },
});

App.Router.map(function () {
    this.resource('viewObject', { path: '/' });
});
使用Ember Inspector,我可以看到正在使用的模型具有从服务器返回的所有属性,但是如果我尝试使用“ComputedProp”属性,则什么都不会发生,这使我认为Ember没有识别我的模型定义。我通过评论我的模型证实了这一点——这样做后没有任何变化

有没有我不遵守的命名约定? 我应该如何使Ember将JSON从服务器映射到我的模型

谢谢

更新

这似乎是因为我没有使用Ember data REST adapter,而是手动发出请求,因为它需要一些调整才能与我的JSON API融为一体。 在我从模型中创建了一个记录并填充了数据后,一切都开始工作了:

var store = this.store;
$.getJSON().then(function(data){
    return store.createRecord('ViewObject', data);
});

如果我在这里做的事情有任何副作用,我也会很高兴。感谢

要以“余烬方式”完成此操作,我建议您自定义应用程序或单个模型序列化程序以处理调整: