Ember.js 使用余烬数据填充表格
我对Ember CLI比较陌生,刚刚开始使用Ember数据从我的Laravel强大的RESTful API检索JSON数据 我想用“Accounts”API返回的数据填充DataTables表。每个“帐户”在从服务器返回的JSON中的“联系人”键下都有一个嵌入的“联系人”记录。JSON是正确的,API返回的“帐户”记录示例如下:Ember.js 使用余烬数据填充表格,ember.js,ember-data,ember-cli,Ember.js,Ember Data,Ember Cli,我对Ember CLI比较陌生,刚刚开始使用Ember数据从我的Laravel强大的RESTful API检索JSON数据 我想用“Accounts”API返回的数据填充DataTables表。每个“帐户”在从服务器返回的JSON中的“联系人”键下都有一个嵌入的“联系人”记录。JSON是正确的,API返回的“帐户”记录示例如下: { "accounts": { "id": 1, "account_name": "My Account", "
{
"accounts": {
"id": 1,
"account_name": "My Account",
"contact": {
"id": 54,
"first_name": "John",
"last_name": "Smith"
}
}
}
在我的控制器中,我对RecordArray中的每个“Account”DS.Model调用了serialize()方法,将其转换为JSON对象,因为这应该允许对关系进行序列化。但是,即使我将ActiveModelSerializer与EmbeddedRecordsMixin一起使用,结果JSON中的关系仍如下所示:
"contact": {
"id": "54"
}
import DS from "ember-data";
export default DS.ActiveModelSerializer.extend(DS.EmbeddedRecordsMixin, {
attrs: {
contact: {embedded: 'always'},
},
});
import DS from 'ember-data';
export default DS.Model.extend({
contact: DS.belongsTo('contact', {embedded: 'always'}),
});
因此,序列化的嵌入式“Contact”对象中只存在“id”字段
我的“account.js”序列化程序如下所示:
"contact": {
"id": "54"
}
import DS from "ember-data";
export default DS.ActiveModelSerializer.extend(DS.EmbeddedRecordsMixin, {
attrs: {
contact: {embedded: 'always'},
},
});
import DS from 'ember-data';
export default DS.Model.extend({
contact: DS.belongsTo('contact', {embedded: 'always'}),
});
我的“account.js”模型如下所示:
"contact": {
"id": "54"
}
import DS from "ember-data";
export default DS.ActiveModelSerializer.extend(DS.EmbeddedRecordsMixin, {
attrs: {
contact: {embedded: 'always'},
},
});
import DS from 'ember-data';
export default DS.Model.extend({
contact: DS.belongsTo('contact', {embedded: 'always'}),
});
我无法理解我做错了什么,如果有人能提供帮助,我将不胜感激
谢谢。您可以通过选择答案作为解决方案来结束问题。回答你自己的问题是可以的。我没有选择的余地,因为我的回答已经过去48小时了。