当我使用UserCreationForm注册时,我的管理员用户模型不更新新记录。
Access the github code
在我导入的视图中,Usercreationform如下所示,我做了所有视图的编码。我不知道哪里出错了。我也正确地将表单呈现到模板中。但是烦人的部分是在填写表单后出现的。它在管理面板中不会更新,一旦我访问它
// View file:
from django.shortcuts import render
from django.http import HttpResponse
from django.contrib.auth.forms import UserCreationForm
def home(request):
if request.method == "POST":
form = UserCreationForm(request.POST)
if form.is_valid():
form.save()
context = {'form':form}
return render(request, 'main/index.html', context)
// Template file:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<form action="" method="POST">
{% csrf_token %}
{{form.as_p}}
<input type="submit" value="register">
</form>
</body>
</html>
1条答案
按热度按时间nuypyhwy1#
摘自以下文件:
在成功处理POST数据后,你应该返回一个
HttpResponseRedirect
。这个技巧不是Django特有的;总来说,这是一种很好的Web开发实践。所以试试下面的观点:
您的urls.py应该是:
success.html
相同的URL模式和HTML页面,如果表单无效,可以显示错误。
您也可以删除空的
action
属性,因为Django默认使用当前页面路径,所以模板应该是这样的: