如何序列化Ember-Data
How to serialize Ember-Data
我需要将 Ember 数据序列化为 JSON 并使用 JSON 来提供此 JS 库:http://www.jstree.com/docs/json/
我不知道如何实现。 DS.RESTSERIALIZER 和 DS.EmbeddedRecordsMixin 应该能够实现这一点,但我不知道如何在我的 Ember-CLI 应用程序中调用它们。它们似乎被构建为只与后端对话。我的后端是带有 Emberfire 适配器的 Firebase,我不想更改它。 DS.RESTSERIALIZER 是我需要你用的吗?我应该改用 JSON.stringify() 吗?
我的模型是:
import DS from 'ember-data';
export default DS.Model.extend({
text: DS.attr('string'),
order: DS.attr('number', { defaultValue: 0 }),
cause: DS.belongsTo('cause', { inverse: 'causeUnitLink', async: true}),
causeUnit: DS.belongsTo('causeUnit', { inverse: 'causeUnitLinks', async: true}),
parents: DS.hasMany('causeUnitLink', { inverse: 'children', async: true}),
children: DS.hasMany('causeUnitLink', {inverse: 'parents', async: true}),
});
我已经创建了下面的消毒器,但我不知道如何在我的控制器中调用它的方法,所以我可以将 ember-data 转换为 JSON 并提供给 JSON 到我的 jsTree 组件。
import DS from 'ember-data';
export default DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, {
attrs: {
text: { embedded: 'always' },
children: { embedded: 'always' }
},
});
我找到的最好方法是使用方法 toJSON():http://emberjs.com/api/data/classes/DS.Model.html#method_toJSON
我需要将 Ember 数据序列化为 JSON 并使用 JSON 来提供此 JS 库:http://www.jstree.com/docs/json/
我不知道如何实现。 DS.RESTSERIALIZER 和 DS.EmbeddedRecordsMixin 应该能够实现这一点,但我不知道如何在我的 Ember-CLI 应用程序中调用它们。它们似乎被构建为只与后端对话。我的后端是带有 Emberfire 适配器的 Firebase,我不想更改它。 DS.RESTSERIALIZER 是我需要你用的吗?我应该改用 JSON.stringify() 吗?
我的模型是:
import DS from 'ember-data';
export default DS.Model.extend({
text: DS.attr('string'),
order: DS.attr('number', { defaultValue: 0 }),
cause: DS.belongsTo('cause', { inverse: 'causeUnitLink', async: true}),
causeUnit: DS.belongsTo('causeUnit', { inverse: 'causeUnitLinks', async: true}),
parents: DS.hasMany('causeUnitLink', { inverse: 'children', async: true}),
children: DS.hasMany('causeUnitLink', {inverse: 'parents', async: true}),
});
我已经创建了下面的消毒器,但我不知道如何在我的控制器中调用它的方法,所以我可以将 ember-data 转换为 JSON 并提供给 JSON 到我的 jsTree 组件。
import DS from 'ember-data';
export default DS.RESTSerializer.extend(DS.EmbeddedRecordsMixin, {
attrs: {
text: { embedded: 'always' },
children: { embedded: 'always' }
},
});
我找到的最好方法是使用方法 toJSON():http://emberjs.com/api/data/classes/DS.Model.html#method_toJSON