DRF“ObtainAuthToken”对象没有属性“request”

ian*_*ian 0 django-rest-framework

每次用户登录时我都会收到错误。该函数应显示与用户关联的令牌,但我收到一条错误消息“ObtainAuthToken”对象,该对象没有属性“request”。

视图.py

from rest_framework.authtoken.serializers import AuthTokenSerializer
from rest_framework.authtoken.views import ObtainAuthToken

class LoginView(generics.CreateAPIView):
    serializer_class = AuthTokenSerializer
    
    def create(self, request):
        return ObtainAuthToken().post(request)
Run Code Online (Sandbox Code Playgroud)

已安装的应用程序

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    
    'core',
    
    'rest_framework',
    'rest_framework.authtoken',
]
Run Code Online (Sandbox Code Playgroud)

par*_*han 5

class LoginView(generics.CreateAPIView):
    serializer_class = AuthTokenSerializer

    def create(self, request):
        return ObtainAuthToken().as_view()(request=request._request)
Run Code Online (Sandbox Code Playgroud)

这对你有用

  • 您能解释一下为什么会这样吗?我是 DRF 新手,我想了解这一点 (2认同)