我使用的是视图集。ModelViewSet并希望替换标准端点URL
例如:
而不是用"标准"端点创建新的代码段
POST{BAST_URL}/sippet/
我希望用"创建"URL替换它并禁用标准
POST{BAST_URL}/Sippet/create/
我可以创建一个新的自定义创建方法,但不能
*在URL中使用"create"->错误:不能在以下方法上使用@action decorator,因为它们是现有的路由:create
*Disabled Standart URL from create a snippet
@action(detail=False, methods=['post'])
def create_snippet(self, request, *args, **kwargs):
return super(SnippettViewSet, self).create(request, *args, **kwargs)
您需要将一个额外的参数url_path
传递给@action
装饰器,如下所示
@action(detail=False, methods=['post'], url_path='snippet/create', url_name='snippet_create')
def snippet(self, request, *args, **kwargs):
return super(SnippettViewSet, self).create(request, *args, **kwargs)