在django-自定义用户中,注册失败。
我将从使用默认注册模型切换到自定义模型(删除用户名并使用电子邮件地址进行身份验证)。一个现有的用户可以登录,但是创建一个新用户现在已经失败了。我调用url 'registration_register',我得到我期望的用户创建表单,我填写它并点击提交按钮,and...the表单用电子邮件重新显示,但没有密码,没有错误,没有用户创建。
registration_form.html
{% extends "..." %}
{% block content %}
<form method="post" action="{% url 'registration_register' %}">
{% csrf_token %}
{{ form.email.errors }}
<label for="{{ form.email.id_for_label }}">mail</label> {{ form.email }}
<br>
{{ form.password1.errors }}
<label for="{{ form.password1.id_for_label }}">password</label> {{ form.password1 }}
<br>
{{ form.password2.errors }}
<label for="{{ form.password2.id_for_label }}">password</label> {{ form.password2 }}
<br>
<input type="submit" value="Create" />
<input type="hidden" name="next" value="{{ next }}" />
</form>
{% endblock %}更多背景
我通过pip安装django --定制用户并进行建议的这里更改--添加到INSTALLED_APPS,db同步(实际上,这是一个新项目,所以db删除和创建),并对代码进行一些修改以使用它。我把“注册”留在了INSTALLED_APPS。
Django (1.7.6)
django-custom-user (0.5)我的urls.py仍然指向registration.backends.default.urls。
url(r'^accounts/', include('registration.backends.default.urls')),发布于 2015-04-16 10:35:23
那么,您所面临的问题是,django-registration需要一个用户名、一个密码和一个电子邮件地址。正如您在django-registration源代码中看到的那样
如果我是您,我只需创建一个简单的表单并使用来自django的FormView。之后,为了匹配django注册,您可以做更多的研究,并尝试将django注册与django-定制用户相匹配。
您可以创建继承django自定义用户的类,或者更改表单或诸如此类的东西。否则,您甚至可以分叉django-注册并根据django-自定义用户更新它,然后将它用于您的项目,并使它在github上作为django注册-自定义用户可用。
发布于 2015-04-16 10:06:22
你试过python manage.py makemigrations和python manage.py migrate吗?
还尝试将表单显示为form.as_p,以便获得自动显示的所有字段和所有错误。暂时忘掉CSS吧。
另外,registration.backends.default.urls是什么包?因为它不是django-custom-user
我希望这能帮到你
https://stackoverflow.com/questions/29670953
复制相似问题