不确定为什么我在django中得到一个(CSRF令牌丢失或不正确.)错误



HTML:

{% extends 'generic.html' %}
{% load static %}
{% block title %}
<title>Projects - Login</title>
{% endblock %}
{% block content %}
<form action='#', method='post'>
{% csrf_token %}
<label for="username">Username</label>
<input type="text" name="username" id="username">
<label for="password">Password</label>
<input type="password" name="password" id="password">
<input type='submit' value='Login!'>
</form>
{% endblock %}

views.py:

def login(request):
return render(request, 'login.html')

urls.py:

urlpatterns = [
path('login/', views.login, name='login')
]

我试着在登录函数上添加@csrf_protect装饰器。但是我仍然会犯同样的错误。

更改模板中的表单:

<form action="{% url 'your_app_name:login' %}" method="post">
{% csrf_token %}
...
</form>

或者,

<form action="login/" method="post">
{% csrf_token %}
...
</form>

最新更新