我尝试使用Ember-data中的this.get('/transactions/from/:startDate/to/:endDate');
函数向this.store.query
的自定义网址发送GET请求。怎么能实现呢?
答案 0 :(得分:2)
要发送自定义URL的GET请求,需要覆盖适配器中的query
函数。我有一个名为transaction
的模型。所以我想做this.store.query('transaction', { filterType: 'dateRange', startDate: '01-01-12', endDate: '12-31-12'}
之类的事情,然后将GET请求发送到transactions/from/01-01-12/to/12-31-12
。以下是我必须做的工作:
query: function(store, type, query) {
if (query.filterType && query.filterType === 'dateRange') {
const url = `transactions/from/${query.startDate}/to/${query.endDate}`;
return new Ember.RSVP.Promise(function(resolve, reject) {
Ember.$.getJSON(url).then(data => resolve(data), err => reject(err));
});
} else {
return this._super(store, type, query);
}
}