如何检索从EmberJS另一个REST URL相同型号

问题描述 投票:0回答:1

我emberJS应用程序的模型树但是我的API的树匹配,我有2条不同的路线返回相同的数据类型:

/products//users/:id/supported_products/都返回产品的数据。

当我需要的应用程序的products没有问题:

 this.store.query('product',params);

但是我不知道如何查询产品从用户路径。这样做的地方将是适配器,但我需要定义一个次适配器,我会打电话的时候,我需要支持的产品,我不知道怎么做。

ember.js ember-data
1个回答
3
投票

我想,如果是我,我会创造条件,指导如何动态更改端点的自定义适配器的虚拟查询参数。

例如,我可能有一个supportedByUser标志。然后在我的app/adapters/product.js做这样的事情:

import JSONAPIAdapter from 'ember-data/adapters/json-api';
export default JSONAPIAdapter.extend({
  urlForQuery(query, modelName) {
    let userId = query.supportedByUser;
    delete query.supportedByUser;
    return userId
      ? `${this.namespace || ''}/users/${userId}/supported_products`
      : this._super(...arguments);
  }
});

下面是一个例子玩弄demoing这样的:https://ember-twiddle.com/b406391e98ed4fda30bc227a894fa7c9

© www.soinside.com 2019 - 2024. All rights reserved.