Django でログインフォームを作成しています。ログイン送信ボタンをクリックすると、エラーが発生します
/registration/ の ValueError ビュー registration.views.login が HttpResponse オブジェクトを返しませんでした。
ビューファイルは
from django.template import loader
from django.shortcuts import render
from registration.models import Registration
from django.http import HttpResponse
def login(request):
if request.method == 'POST':
user = authenticate(username=request.POST['username'], password=request.POST['password'])
if user is not None:
if user.is_active:
login(request, user)
# success
return HttpResponseRedirect('sucess')
else:
# disabled account
return direct_to_template(request, 'inactive_account.html')
else:
# invalid login
return direct_to_template(request, 'invalid_login.html')
def logout(request):
logout(request)
return direct_to_template(request, 'logged_out.html')
そしてlogin.htmlファイルは
<h3>Login</h3>
<form action="/login/" method="post" accept-charset="utf-8">
<label for="username">Username:--</label><input type="text" name="username" value="" id="username" /><br>
<label for="password">Password:-- </label><input type="password" name="password" value="" id="password" />
<p><input type="submit" value="Login →"></p>
</form>