gpt4 book ai didi

ember.js - Ember js 使用嵌套资源 URL 处理 API 端点

转载 作者:行者123 更新时间:2023-12-05 00:30:14 24 4
gpt4 key购买 nike

我的 API 的一部分设置如下:
/v1/place/:place_uuid - 检索一个地方
/v1/place/:place_uuid/cart - 检索与该地点关联的购物车对象

我的路线设置正确(见下文),但 Ember 发出的 API 请求与我自己的不匹配。

App.Router.map(function() {
this.resource('place', { path: '/:place_uuid' }, function() {
this.resource('category', { path: '/:category_uuid' }, function() {
this.resource('product', { path: '/:product_uuid' });
});
this.resource('cart', { path: '/cart' });
});
});

当我加载 /:place_uuid在浏览器中,我看到了对 /v1/place/:place_uuid 的 API 请求哪个是对的。路由与返回的对象一起呈现。

当我加载 /:place_uuid/cart在浏览器中,我看到与上面相同的内容,但也看到了对 /v1/carts 的第二个 API 请求.这一切都很好,除了 /v1/carts网址。我需要它是 /v1/place/:place_uuid/cart
我尝试将 buildURL 与 Cart 模型的自定义适配器一起使用。但没有运气。我无法在下面的任何地方访问 place_uuid,因此无法将其注入(inject)。
cartAdapter = App.Adapter.extend({
buildURL: function(record, suffix) {
console.log(record); // just a string.
var url = [this.url];
url.push('places');
url.push(place_uuid); // if only I had access to place_uuid I could inject it here
url.push('cart');
return url.join("/");
}
});
App.Store.registerAdapter('App.Cart', cartAdapter);

如果我可以使用我原来的 API 端点那就太好了,我想另一种选择是将端点更改为 /v1/carts?place_uuid=:place_uuid (Ember 似乎更喜欢,但有点棘手,因为我不在后端工作)。

任何建议表示赞赏。

最佳答案

Ember 尚不支持嵌套的 REST URL/资源。有一个open issue for this functionality你可以监控。

关于ember.js - Ember js 使用嵌套资源 URL 处理 API 端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16390313/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com