gpt4 book ai didi

python - django-rest-framework 中的嵌套 detail_route

转载 作者:太空狗 更新时间:2023-10-30 00:10:30 25 4
gpt4 key购买 nike

考虑简单 View :

class SomeView(viewsets.GenericViewSet,
viewsets.mixins.ListModelMixin,
viewsets.mixins.RetrieveModelMixin):
...

@decorators.detail_route(methods=ENDPOINT_PROPERTY_METHODS)
def some_property(self, request, *args, **kwargs):
view = SomeOtherView
return view.as_view(CRUD_ACTIONS)(request, *args, **kwargs)

我正在调用 SomeOtherView 以拥有像 /someresource/:id/myproperty 这样的端点属性,因此该属性将接收请求并可以执行所有操作CRUD 操作。

但是,我想 SomeOtherView 也有声明的 detail_route 里面也有像 /someresource/:id/myproperty/nestedproperty .
由于我是动态调用SomeOtherView,无法注册url,因此无法调用嵌套属性。

如何解决这种情况以具有嵌套属性?

最佳答案

目前在 django-rest-framework 中没有自动创建嵌套路由的本地方法,但有一些方法可以实现您的目标:

  1. 使用 drf-extentions,你正在搜索的是嵌套路由器:https://chibisov.github.io/drf-extensions/docs/#nested-routes
  2. 使用默认路由器手动创建路径,在这里您需要手动过滤查询集

虽然您没有详细解释您想要使用此 api 结构实现什么,但我不建议继续这条路径,因为 View 不打算像那样使用。

关于python - django-rest-framework 中的嵌套 detail_route,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30351446/

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