我想知道是否有像this.store.findAll('report')这样的任何余烬商店功能,这实际上是一个GET请求,但是对于我的路线中的postObj的POST,我该如何处理我得到的回复。目前我正在发送ajax POST请求。
答案 0 :(得分:1)
你可以做到
store.findAll('report', { adapterOptions: { method: 'POST' } })
但是你必须覆盖适配器中的findAll
并自己发出ajax请求。您可以通过从快照数组中获取adapterOptions
来检查哪种方法。
import DS from 'ember-data';
import Ember from 'ember';
const { get } = Ember;
export default DS.JSONAPIAdapter.extend({
findAll(store, type, sinceToken, snapshotRecordArray) {
let method = get(snapshotRecordArray, 'adapterOptions.method');
let url = this.buildURL(type.modelName, snapshotRecordArray, 'findAll');
// ...
// return promise
}
});
请注意,建议不要使用put或post来获取记录,并且最有可能出现代码异味。