私はauthでbuidを使用してログインビューを記述しました。djangoauth.login()は上記のエラーを私のコードにエラーコードo 500で与えます
from rest_framework.response import Response
from rest_framework import status
from rest_framework.decorators import api_view
from django.contrib.auth.models import User
from django.contrib.auth import authenticate,logout,login
@api_view(['POST'])
def register(request):
user=User.objects.create_user(username=request.POST['username'],email=request.POST['email'],password=request.POST['password'])
return Response({'ok':'True'},status=status.HTTP_201_CREATED)
@api_view(['POST'])
def login(request):
user=authenticate(
username=request.POST['username'],
password=request.POST['password']
)
if user is not None:
login(request,user)
return Response({'ok':'True'},status=status.HTTP_200_OK)
else:
return Response({'ok':'False'},status=status.HTTP_401_UNAUTHORIZED)
ビューの名前はauth login関数と同じであるため、非表示になっています。ビュー名を変更するか、関数を別の名前(例:)でインポートしますfrom django.contrib.auth import login as auth_login
。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加