使用 RestAdapter 时模型的计算字段不显示。为什么?
我的路线和视图如下所示:
App.MyObjRoute = Ember.Route.extend({
model : function(params)
{
return App.MyObj.find(params.myobjId);
}
});
App.MyObjView = Ember.View.extend({});
我有一个 DS.Model:
App.MyObj = DS.Model.extend({
first: DS.attr( 'string' ),
last: DS.attr( 'string' ),
firstlast: function()
{
return this.get('first') + ' ' + this.get('last');
}.property('first', 'last')
})
还有一个夹具代码:
App.Store = DS.Store.extend({
adapter: DS.FixtureAdapter.create()
});
App.MyObj.FIXTURES = [
{
id: 1,
first: 'Trek',
last: 'Bob'
}
];
我在这样的模板中显示:
<script type="text/x-handlebars" data-template-name="myTemplate">
{{firstlast}} {{first}} {{last}}
</script>
这很好用。我显示“Trek Bob Trek Bob”。
但是当我保留模型时:
App.MyObj = DS.Model.extend({
first: DS.attr( 'string' ),
last: DS.attr( 'string' ),
firstlast: function()
{
return this.get('first') + ' ' + this.get('last');
}.property('first', 'last')
})
并用这样的 RestAdapter 替换夹具代码:
App.Store = DS.Store.extend({
revision: 13,
adapter: DS.RESTAdapter.extend({url: "myApi"})
});
只有{{first}}
and{{last}}
被显示,而{{firstlast}}
不是。
如何解决?