ユーザーのパスワードを変更するために確認用の電子メールを送信したいと思います。 'モデルフォーム'には属性cleaned_dataがありません
私はジャンゴでの古典的な問題を抱えていると、サーバーは、このエラーを返します:私はStackOverflowの中にいくつかの答えをチェックした場合「モデルフォーム」を、私はドンを
def forgottenPwdEmail(request):
if request.method == 'POST':
form = PasswordResetRequestForm(request.POST)
if User.objects.filter(email = form.cleaned_data['email']).exists() and form.is_valid():
user = form.cleaned_data['email']
sendResetPasswordMail(user, request.META['HTTP_HOST'])
return redirect('passwordConfirmation')
else:
form = PasswordResetRequestForm()
return render(request, 'front/reset_password_form.html', {'form': form})
cleaned_data何の属性を持っていませんform.is_valid()メソッドを呼び出してください。私は検索を続けますが、コードは昨日働いていましたが、ユーザーが接続されているときだけでした。ユーザーがパスワードを忘れた場合、彼は自分のセッションに接続できません。
私の英語のため申し訳ありませんが、私は非常によく、それを話すことはありませんが、あなたはあなたがform.is_valid()
を呼び出す前に、アクセスcleaned_data
しようとしている:)
django.contrib.authには、パスワードリセット電子メールの機能が組み込まれています。あなたは自分で書くのではなく、それを使いたいかもしれません。 –
いくつかの理由で、私はジャンゴの管理と私のウェブサイトをプロダクションで送ることができません。私は既に電子メールのリセット機能を使用していましたが、今私は自分自身をwirteする必要があります。 –
私はDanielに同意し、可能であれば組み込みのパスワードリセット機能を使用します。 [django auth views](https://docs.djangoproject.com/en/1.9/topics/auth/default/#module-django.contrib.auth.views)は、Django管理者とは別のものです。管理者なしで使用することができます。 – Alasdair