这是我的注册表格视图:
from django.contrib.auth.forms import UserCreationForm class RegistroUsuario(FormView): template_name = "perfiles/registro_usuario.html" form_class = UserCreationForm success_url = reverse_lazy("cliente:mi_perfil") def form_valid(self, form): print("form_valid") return super(RegistroUsuario, self).form_valid(form)
它打印"form_valid".但它实际上并没有创建用户.它重定向到success_url
但当我检查哪个用户"登录"时,它是一个AnonymousUser
.我不明白.
使用FormView类时,form_valid方法不会为您保存表单.你需要添加它,如下所示:
def form_valid(self, form): form.save() return super(RegistroUsuario, self).form_valid(form)
CreateView和UpdateView使用该行为.