首页 > 解决方案 > python django中的登录页面

问题描述

嗨我只是想创建我的登录页面,但我有一个错误。我想导入登录视图并使用我创建的管理员的用户名和密码。

我试过这段代码,但我有一个错误。

网址.py

from django.contrib import admin
from django.urls import path
from gomo_websys.views import login_page, home_page
from django.contrib.auth.views import LoginView

urlpatterns = [
    path('' , LoginView, {'template_name': 'login/Login.html'}),
    path('home/' , home_page, name='home_page'),

登录.html

{% extends 'base.html' %}

{% block head %}
<title>Login</title>
{% endblock %}

{% block body %}
<h1>Welcome</h1>
<p>
  You can log in here!
</p>
<h2>Login</h2>
<form method="post">
  {% crsf_token %}
  {{ form.as_p }}
</form>
{% endblock %}

视图.py

from django.http import HttpResponse
from django.shortcuts import render

def login_page(request):
    return render(request, "login/Login.html")

我有一个错误结果。

标签: djangoauthentication

解决方案


在 urls.py

   from django.urls import path, include
   from django.contrib.auth import views

   urlpatterns = [
       path('',include('django.contrib.auth.urls')),
   ]

所以现在你可以example.com/login通过 django 进入默认登录页面,所以现在你可以example.com/logout退出

要使用自定义登录页面,请在文件夹中创建一个名为registraions的文件夹,并使用名称创建templates您的登录 html 页面login.html

您可以从下面的代码控制登录和注销后登陆的位置

LOGIN_URL = 'login' 
#'login' is the url where you go if you use @login_required decorator if you are not logged in

LOGIN_REDIRECT_URL = 'index' 
# 'index' is url where you go after logging in

LOGOUT_REDIRECT_URL = 'login'
# 'login' is url where you go after logged out

推荐阅读