DS.Model中的计算字段不适用于Ember.js中的DS.RestaAdapter
使用RestaAdapter时不显示模型的计算字段。为什么? 我的路线和视图如下所示:DS.Model中的计算字段不适用于Ember.js中的DS.RestaAdapter,ember.js,Ember.js,使用RestaAdapter时不显示模型的计算字段。为什么? 我的路线和视图如下所示: App.MyObjRoute = Ember.Route.extend({ model : function(params) { return App.MyObj.find(params.myobjId); } }); App.MyObjView = Ember.View.extend({}); <script type="text/x-handlebars" data-te
App.MyObjRoute = Ember.Route.extend({
model : function(params)
{
return App.MyObj.find(params.myobjId);
}
});
App.MyObjView = Ember.View.extend({});
<script type="text/x-handlebars" data-template-name="myTemplate">
{{firstlast}} {{first}} {{last}}
</script>
App.Store = DS.Store.extend({
revision: 13,
adapter: DS.RESTAdapter.extend({url: "myApi"})
});
我有一个DS。型号:
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'
}
];
我在模板中显示的,如下所示:
App.MyObjRoute = Ember.Route.extend({
model : function(params)
{
return App.MyObj.find(params.myobjId);
}
});
App.MyObjView = Ember.View.extend({});
<script type="text/x-handlebars" data-template-name="myTemplate">
{{firstlast}} {{first}} {{last}}
</script>
App.Store = DS.Store.extend({
revision: 13,
adapter: DS.RESTAdapter.extend({url: "myApi"})
});
并将夹具代码替换为重新调整适配器,如下所示:
App.MyObjRoute = Ember.Route.extend({
model : function(params)
{
return App.MyObj.find(params.myobjId);
}
});
App.MyObjView = Ember.View.extend({});
<script type="text/x-handlebars" data-template-name="myTemplate">
{{firstlast}} {{first}} {{last}}
</script>
App.Store = DS.Store.extend({
revision: 13,
adapter: DS.RESTAdapter.extend({url: "myApi"})
});
仅显示{{first}}
和{{last}}
,而{{firstlast}}
不显示
如何修复它?这很奇怪,因为它还应该与
RESTAdapter
一起使用。能否尝试在计算属性中放置一个控制台.log(…)
,并查看在使用RESTAdapter
时是否调用了它?我已经尝试过,并且调用了它,但此.get('first')返回空值。你有什么想法吗?我发现了:,关于下划线的部分,在我的项目中,我在字段中有很多更好的地方,因为一些奇怪的原因,Ember要求REST以小写字母和下划线返回。没有明确的解释什么是错的,没有错误。非常令人沮丧哦。。。