如何在Ember数据中存储和加载来自本地文件的模型?

时间:2016-11-10 09:07:09

标签: ember.js ember-data ember-cli electron

我正在制作一个Ember Electron应用程序并希望将一些模型数据保存到json或json-api格式的文件而不是将其推送到远程API,这将是最好的方法这样做?

我看到可以在模型对象上调用.toJSON()来获取模型的基本JSON表示,我可以使用电子设置将其保存到磁盘,但是我不知所措。关于如何加载数据。

从我所看到的,使用" push" Ember数据中的函数允许您导入数据,但它似乎需要JSON-API格式:

https://guides.emberjs.com/v2.9.0/models/pushing-records-into-the-store/

1 个答案:

答案 0 :(得分:0)

我发现以JSON API规范格式存储数据最简单。要将其从系统中移除,只需调用var data = model.serialize({includeId: true}),这将为您提供数据的JSON API Specced版本。

或者获得大量模型:

var jsonModels = [];
allModels.forEach(function(model) {
    jsonModels.pushObject(model.serialize({includeId: true}).data)
}, this);
return {data: JSON.stringify(jsonModels)};

然后,您可以调用this.get('store').pushPayload(data);将JSON加载到商店中。