繁体   English   中英

django 1.8 CreateView错误

[英]django 1.8 CreateView Error

我正在使用django 1.8创建一个登录表单。 但是包含注册表的模板无法正确呈现。

我的views.py

class SignUpView(CreateView):
    RegistrationForm = UserCreationForm
    fields = ['username','password1','password2']
    model = User
    template_name = 'accounts/signup.html'

我的forms.py

from django.contrib.auth.forms import UserCreationForm
from django.contrib.auth.forms import AuthenticationForm
from crispy_forms.helper import FormHelper
from crispy_forms.layout import Layout, ButtonHolder, Submit

class RegistrationForm(UserCreationForm):
   def __init__(self, *args, **kwargs):
     super(RegistrationForm, self).__init__(*args, **kwargs)

    self.helper = FormHelper()
    self.helper.layout = Layout(
        'username',
        'password1',
        'password2',
        ButtonHolder(
            Submit('register', 'Register', css_class='btn-primary')
        )
    )

signup.html

{% extends 'layouts/base.html' %}
{% load crispy_forms_tags %}

{% block title %}Register | {{ block.super }}{% endblock %}

{% block headline %}<h1>Registration form</h1>{% endblock %}

{% block content %}
{% crispy form %}
{% endblock %}

模板呈现但没有提交按钮。我无法弄清楚问题出在哪里。

您的SignUpView没有指定应呈现的表单,您需要添加form_class属性。

class SignUpView(CreateView):
    form_class = RegistrationForm
    model = User
    template_name = 'accounts/signup.html'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM