ユーザーを追加するために簡単なフォームを作成しようとしています。組み込みのフォーム生成 UserCreationForm() を使用しています。ここで使用したサンプルコードを見つけました。
ここに私の見解があります:
def user_add(request):
if request.method == "POST":
form = UserCreationForm(request.POST)
if form.is_valid():
new_user = User.objects.create_user(**form.cleaned_data)
login(new_user)
return HttpResponseRedirect('main.html')
else:
form = UserCreationForm()
return render(request, 'main/user_add_djDefault.html', {'form': form.as_p()})
フォームは正しく生成されますが、データを入力して送信すると、次のようになります。
Exception Type: TypeError
Exception Value: 'password1' is an invalid keyword argument for this function
ここでエラーが発生します:
new_user = User.objects.create_user(form.cleaned_data)
フォームの作成と検証は同じモデルに基づいているため、このエラーはどこから来るのだろうか...