我有Django的设置注册页面。在IE,注册页面上输入注册的URL可以,但是我喜欢页面上的“ register”按钮,没有注册表格显示。 enter image description here
users \ urls.py
urlpatterns = [
# register page
re_path('^register/$', views.register, name='register'),
]
users \ views.py
def register(request):
"""register new user"""
if request.method != 'POST':
# display blank register form
form = UserCreationForm()
else:
# deal filled form
form = UserCreationForm(data=request.POST)
if form.is_valid():
new_user = form.save()
# auto login, and redirect to home page
authenticated_user =authenticate(username=new_user.username,password=request.POST['password1'])
login(request, authenticated_user)
return HttpResponseRedirect(reverse('learning_logs:index'))
context = {'form': form}
return render(request, 'users/register.html', context)
register.html
{% extends "learning_logs/base.html" %}
{% block content %}
<form method="post" action="{% url 'users:register' %}">
{% csrf_token %}
{{ form.as_P }}
<button name="submit">register</button>
<input type="hidden" name="next" value="{% url 'learning_logs:index' %}" />
</form>
{% endblock content %}
答案 0 :(得分:1)
这是三种呈现表单的方法。
标记
您也可以使用HTML手动呈现表单,但字段名称应与注册表单相同。
答案 1 :(得分:0)
p应该小写
{{ form.as_p }}