使用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替换fixture代码:
App.Store = DS.Store.extend({
revision: 13,
adapter: DS.RESTAdapter.extend({url: "myApi"})
});
仅显示{{first}}
和{{last}}
,而{{firstlast}}
则不会。
如何解决?