11

私はこの種のリソースを持っています:var Products = $resource('companies/:companyId/products') 問題は、すべての会社の製品をURLで取得したいのですが、companies/productsリソースを使用し、取得しているcompanyIdを提供しないことですcompanies//products。おそらく、ちょうどのように別のURLを使用できます/productsが、同じことのために別のリソースが必要であることを意味しますか?

この単純なケースでは、URLをに変更できますcompanies/products/:companyIdが、それはかなり一般的なケースのようです。

4

1 に答える 1

13

はい、現在、別の$resourceを定義する必要があります。

ただし、必要に応じて、$resourceの複数のインスタンスを1つのサービスにラップできます...

app.factory('mergedRes', function($resource) {
  var r1 = $resource('/companies/:companyId/products');
      r2 = $resource('/companies/products');

  r1.getAll = r2.query.bind(r2);

  return r1;
});
于 2012-04-30T12:10:33.530 に答える