身份验证创建路由Django

时间:2015-11-19 03:03:21

标签: django django-rest-framework

我有一个名为rides的模型,我希望能够访问自定义令牌身份验证。我希望这是一个公开的整个视图集。

如何将身份验证方法添加到create方法?以下内容会引发错误,抱怨我无法将list_route添加到已存在的create方法中。

class RideViewSet(viewsets.ModelViewSet):

# POST /rides/
@list_route(methods=['post'], authentication_classes=[CustomTokenAuth])
    def create(self, request, *args, **kwargs):

1 个答案:

答案 0 :(得分:1)

装饰器不适用于ViewSet的{​​{1}} / list / ...

您需要自己处理身份验证。 因此,您需要填写DRF的请求:

  • create作为已执行身份验证的身份验证后端
  • request._authenticatorrequest.user作为您的身份验证后端request.auth
  • 的结果