【发布时间】:2020-04-08 13:42:25
【问题描述】:
大家好,django 3.0 有问题。我正在尝试创建一个用户注册页面,但我不断收到错误。这些是我的代码
users/views.py
from .form import UserRegisterForm
from django.shortcuts import render, redirect
# Create your views here.
def register(request):
if request.method == 'POST':
form = UserRegisterForm(request.POST)
if form.is_valid():
form.save()
return redirect('login')
else:
form = UserRegisterForm()
return render(request, 'register.html', {'form': form})
form.py
from django import forms
from django.contrib.auth.forms import UserCreationForm
from django.contrib.auth.models import User
class UserRegisterForm(UserCreationForm):
email = forms.EmailField()
class Meta:
model = User
fields = ['username', 'email', 'password1', 'password2']
register.html
{% extends 'website/base.html' %}
{% block body %}
{% include 'website/nav_bar.html' %}
<div>
<form method="post">
{% csrf_token %}
<fieldset>
<legend>join now</legend>
{{ form.as_p }}
</fieldset>
<button type="submit">submit</button>
</form>
</div>
{% endblock body %}
【问题讨论】:
-
您的注册中目前没有任何
GET请求句柄 -
是的,因为如果请求处理程序是
GET,则没有return语句。它将为/register/中的所有GET请求返回None对象。
标签: django valueerror