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>