【发布时间】:2017-10-17 18:10:16
【问题描述】:
我是 Django 新手,当我尝试使用 csrf 时,我没有看到 csrfmidderwaretoken 在 html 代码中生成。请有人帮帮我:) 打击是我的代码片段:
urls.py:
`url(r'^register/$', register, name="register"),`
views.py:
def register(request):
if request.method == 'POST':
username = request.POST['username']
password = request.POST['password']
if not (User.objects.filter(username=username)):
User.objects.create(username=username, password=password)
User.save()
return render(request, "register.html", {"status":True})
else:
return render_to_response('register.html')
注册.html:
显示的是:
Django 1.11,Python3.6。 有人可以帮我检查一下吗,非常感谢。
【问题讨论】:
-
您应该使用
create_user而不是create,这样密码才能正确散列。创建对象后的save()调用不是必需的。 -
在您的
settings.MIDDLEWARE中定义了django.middleware.csrf.CsrfViewMiddleware。