タイトル通りですが、generic.FormViewでfrom_classを複数選択することは出来ないのでしょうか?
アカウント作成時に、
入力⇒確認画面⇒登録としたいのですが、現状上手く行っておらず下記サイトを参考にさせてもらっています。
https://narito.ninja/blog/detail/45/
generic.FormViewでform_calssの設定で躓いてます。
入力画面までは表示されますが、UserDateConfirmを呼び出した時点で何も帰ってきていない状態です。
よろしくお願いします。
他参考になりそうなサイトなどあったら教えてもらえると嬉しいです。
from .forms import ProfileForm, UserCreateForm from django.db import transaction from django.contrib.auth import login, authenticate from django.shortcuts import render, redirect from django.views import generic from django.contrib.auth import get_user_model from django.urls import reverse_lazy User = get_user_model() def UserDateInput(request): template_name = 'accounts/signup.html' user_form = UserCreateForm profile_form = ProfileForm context = { "user_form": user_form, "profile_form": profile_form, } # form_class = UserCreateForm return render(request, 'accounts/signup.html',context) def UserDateConfirm(request): user_form = UserCreateForm(request.POST or None) profile_form = ProfileForm(request.POST or None) context = { "user_form": user_form, "profile_form": profile_form, } if request.method == "POST" and user_form.is_valid() and profile_form.is_valid(): return render(request, 'accounts/user_date_confirm.html', context) else: return render(request, 'accounts/signup.html', context) class UserDateCreate(generic.CreateView): user_form = UserCreateForm(request.POST or None) profile_form = ProfileForm(request.POST or None) if request.method == "POST" and user_form.is_valid() and profile_form.is_valid(): user = user_form.save(commit=False) user.is_active = True user.save() profile = profile_form.save(commit=False) profile.user = user profile.save() return redirect("login:index") context = { "user_form": user_form, "profile_form": profile_form, } success_url = reverse_lazy('login:index') def form_invalid(self, form): return render(self.request, 'accounts/signup.html',context)
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。