我在我的ember应用程序中使用了一个简单的findAll查询(ember-version:2.12.0,ember-data-version:2.12.1),我收到以下错误:
断言失败:您不能再将modelClass作为store.buildInternalModel的第一个参数传递。改为传递modelName。
我正在使用RESTAdapter和RESTSerializer。
以下是我的团队模型:
import DS from 'ember-data';
export default DS.Model.extend({
name: DS.attr('string'),
projects: DS.hasMany('project'),
users: DS.hasMany('user'),
members: Ember.computed('users', function() {
return this.get('users.content.length');
}),
leader: DS.belongsTo('user', {
inverse: 'team'
})
});
和我的团队序列化器:
import ApplicationSerializer from './application';
import DS from 'ember-data';
export default ApplicationSerializer.extend(DS.EmbeddedRecordsMixin,{
attrs: {
users: { async: true },
projects: { async: true }
}
});
尽管有错误,但我要求的团队对象都在商店中。到目前为止,我没有运气解决这个问题。
答案 0 :(得分:2)
实际上问题出在序列化程序和服务器的有效负载上。我应该将attrs:{users:{embedded:' always'}}作为用户来自服务器的有效负载。