考虑简单的观点:
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
,因此无法注册网址,因此无法调用嵌套属性。
如何解决此类情况以拥有嵌套属性?
答案 0 :(得分:3)
目前在django-rest-framework中自动创建嵌套路由没有本地方法,但有一些方法可以实现您的目标:
虽然你没有详细解释你想要用这种api结构实现什么,但我不建议继续这条路径,因为意图不是那样用的。