我已经在我的项目urls.py中创建了一个登录视图,
urlpatterns = [
path('login/', views.LoginView.as_view(template_name='login.html'), name='login'),
]
login.html
<div class="container">
<h2>Login</h2>
<form action="\" method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Login</button>
</form>
</div>
直到这里一切正常,我可以看到登录页面并登录。但是现在我可以使用任何匿名凭据登录,他们可以看到主页。 因此,如何将其限制为注册用户,然后注销他们。
答案 0 :(得分:0)
当您将path('login/'...
的内容添加到urls.py
时,将无法访问主页。您需要通过在视图中添加login_required来明确禁止访问主页:
from django.contrib.auth.decorators import login_required
@login_required
def my_view(request):
...
或者您可以将LoginRequiredMixin用于基于类的视图。或者,您也可以使用django-stronghold软件包。