新しいユーザーを作成するためのカスタムページを作成しました。ユーザーは正常に作成されますが、正しい資格情報でログインしようとすると、認証はNoneを返します。Djangoユーザー作成は成功しましたが、authenticate()は返されません。
私がDjango管理者に入ると、作成したばかりのユーザーの新しいパスワードを作成してログインできます。何か案は?
ユーザー関数を作成します。
def create_account(request):
if request.method == "POST":
# Default User Fields
username = request.POST['username']
password = request.POST['password']
email = request.POST['email']
first_name = request.POST['first_name']
last_name = request.POST['last_name']
try:
user = User.objects.create_user(username,email,password,first_name=first_name, last_name=last_name)
user.save()
user_profile = models.User_Profile.objects.create_user_profile(user)
user_profile.save()
response = {'success': True}
return HttpResponse(json.dumps(response))
except Exception, e:
response = {'success': False}
return HttpResponse(json.dumps(response))
ログイン機能:
def site_login(request):
#TODO: GET THIS WORKING
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)
response = {'success':True}
return HttpResponse(json.dumps(response))
else:
response = {'success':False,'message':'Account has been disabled.'}
return HttpResponse(json.dumps(response))
else:
response = {'success':False,'message':'Invalid username or password.'}
return HttpResponse(json.dumps(response))
http://stackoverflow.com/a/23482284/4143613 – erajuan
ない重複の可能性の重複。私は例外を取得していません。 –