如何在json-api中使用Ember Data自定义api?

时间:2022-05-14 20:55:36

Before I use json-api, I custom ember data api like this:

在我使用json-api之前,我自定义了这样的ember数据api:

import DS from 'ember-data';
import config from './../config/environment';

export default DS.Model.extend({
  ...

  useRepairPackage(repairPackageId) {
    Ember.$.ajax({url: `${config.host}/${config.namespace}/quotations/${this.get('id')}/use_repair_package.json`, type: "PATCH", data: {...}}).then((result)=> { 
      return this.reload();
    }); 
  }
});

But when I use json-api, data: {...} is more complex and I must make up json by myself.

但是当我使用json-api时,数据:{...}更复杂,我必须自己组成json。

It had best way to solve this problem? Thanks.

它有解决这个问题的最佳方法吗?谢谢。

1 个解决方案

#1


1  

Even if you use the JSONAPIAdapter for your application, you can still use model.toJSON() to return a flat data JSON object(uses JSONSerializer) to use anywhere like in your ajax request.

即使您为应用程序使用JSONAPIAdapter,仍然可以使用model.toJSON()返回一个平面数据JSON对象(使用JSONSerializer),以便在ajax请求中的任何位置使用。

See toJSON.

见toJSON。

P.S. Have you seen https://github.com/mike-north/ember-api-actions?

附:你看过https://github.com/mike-north/ember-api-actions吗?

#1


1  

Even if you use the JSONAPIAdapter for your application, you can still use model.toJSON() to return a flat data JSON object(uses JSONSerializer) to use anywhere like in your ajax request.

即使您为应用程序使用JSONAPIAdapter,仍然可以使用model.toJSON()返回一个平面数据JSON对象(使用JSONSerializer),以便在ajax请求中的任何位置使用。

See toJSON.

见toJSON。

P.S. Have you seen https://github.com/mike-north/ember-api-actions?

附:你看过https://github.com/mike-north/ember-api-actions吗?