2015-12-02 61 views
0

這是我的註冊表單視圖:Django的UserCreationForm不工作

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。我不明白。

回答

3

使用FormView類時,form_valid方法不會爲您保存表單。您需要添加它,就像這樣:

def form_valid(self, form): 
    form.save() 
    return super(RegistroUsuario, self).form_valid(form) 

行爲是使用CreateViewUpdateView