を使用してパスワードを変更することについて、あまり考えがありませんAdminPasswordChangeForm
。私はチュートリアルを取得し、このスニペットを見つけました:
def user_change_password(request, id):
form = AdminPasswordChangeForm(User, request.POST)
if form.is_valid():
new_user = form.save()
msg = _('Password changed successfully.')
request.user.message_set.create(message=msg)
return HttpResponseRedirect('..')
else:
form = AdminPasswordChangeForm(User)
extra_context = {
'form': form,
'change': True
}
return direct_to_template(request,"users/user_password_change.html",
extra_context = extra_context)
url.py
と templateですべて問題ありませんuser_password_chage.html
。テンプレート レベルでは、2 つのパスワード フィールドを持つフォームが表示されています。しかし、送信ボタンをクリックしてパスワードを変更すると、次のエラーが表示されます。
バインドされていないメソッド set_password() は、User インスタンスを最初の引数として呼び出す必要があります (代わりに unicode インスタンスを取得します)
私は Django の初心者であり、このフォームに関する公式ドキュメントは見つかりませんでした。