Django DRF:如何在使用@detail_route时移动URL末尾的查找字段
我正在尝试创建@detail_路由,但默认路由器的URL是/api/v1/stores/section/{id}/items/Django DRF:如何在使用@detail_route时移动URL末尾的查找字段,django,django-rest-framework,django-urls,Django,Django Rest Framework,Django Urls,我正在尝试创建@detail_路由,但默认路由器的URL是/api/v1/stores/section/{id}/items/ class MyViewSet(viewsets.ViewSet): serializer_class = TestSerializer @detail_route(methods=['get']) def items(self, request, pk=None): 但是我想像这样移动URL末尾的lookup字段/api/v1/stores
class MyViewSet(viewsets.ViewSet):
serializer_class = TestSerializer
@detail_route(methods=['get'])
def items(self, request, pk=None):
但是我想像这样移动URL末尾的lookup字段/api/v1/stores/section/items/{id}/
class MyViewSet(viewsets.ViewSet):
serializer_class = TestSerializer
@detail_route(methods=['get'])
def items(self, request, pk=None):
如果不使用Django url模式作为或通过来处理此情况,则无法执行此操作。如果不使用Django url模式作为或通过来处理此情况,则无法执行此操作。
@action(detail=True,url_path='/(?p[^/]+)/)
@action(detail=True, url_path='/(?P<extra_id>[^/.]+)/')
def items(self, request, extra_id):
def项目(自我、请求、额外id):
加上这个
警告:
如果错误有效,请删除“/”
您可能必须使用'extra_id'@action(detail=True,url_path='/(?p[^/]+)/)查询items对象
def项目(自我、请求、额外id):
加上这个
警告:
如果错误有效,请删除“/”
您可能需要使用“extra\u id”查询items对象对于此类url模式,您可能需要一个
列表路径
,而不是详细路径
。使用列表路径
,我们如何获得查找字段?@TasawerNawaz你可以看看这个你可能想要一个list\u-route
而不是detail\u-route
这样的url模式。使用list\u-route
,我们如何获得查找字段?@TasawerNawaz你可以看看这个