Psynora:
ここで私はdjangorestfulapiのカスタムユーザログインを試みたが、私は、「詳細」というエラーを取得しています:「許可されていません」「メソッド\」POSTが\ 。私が間違っを取得していますどこ誰も説明してくださいできますか?
class LoginAPIView(APIView):
def user_login(self,request,format=None):
# context = RequestContext(request)
if request.method == 'POST':
user = ''' SELECT * FROM users '''
# Gather the username and password provided by the user.
username = request.POST['username']
password = request.POST['password']
user = authenticate(username=username, password=password)
print("auth",str(authenticate(username=username, password=password)))
if user:
# Is the account active? It could have been disabled.
if user.is_active:
login(request, user)
return HttpResponseRedirect('/')
else:
return HttpResponse("xxx")
else:
# Bad login details were provided. So we can't log the user in.
print ("Invalid login details: {0}, {1}".format(username, password))
return HttpResponse("Invalid login details supplied.")
エンドポイントのURL:
path('api/login/',LoginAPIView.as_view(), name='login'),
ムハンマド・ハッサン:
クラスベースのビューでは、次のような独立したHTTPメソッドのための別のメソッドを定義する必要があります
class LoginAPIView(APIView):
def post(self,request,format=None):
user = ''' SELECT * FROM users '''
# Gather the username and password provided by the user.
username = request.POST.get('username')
password = request.POST.get('password')
user = authenticate(username=username, password=password)
print("auth",str(authenticate(username=username, password=password)))
if user:
# Is the account active? It could have been disabled.
if user.is_active:
login(request, user)
return HttpResponseRedirect('/')
else:
return HttpResponse("xxx")