以下是一个简单的 Django 登录页面代码。为了创建一个完整的可运行示例,您需要建立一个新的 Django 项目和应用。如果您还没有安装 Django,可以使用 pip 进行安装:
pip install django
现在,让我们创建一个新的 Django 项目和应用,然后添加登录功能。
django-admin startproject myproject
cd myproject
django-admin startapp myapp
打开 myproject/settings.py
文件,将 'myapp'
添加到 INSTALLED_APPS
列表中:
INSTALLED_APPS = [
# ...
'myapp',
# ...
]
创建一个新文件 myapp/views.py
,并添加以下代码:
from django.shortcuts import render, redirect
from django.contrib.auth import authenticate, login
def login_view(request):
if request.method == 'POST':
username = request.POST.get('username')
password = request.POST.get('password')
user = authenticate(username=username, password=password)
if user is not None:
login(request, user)
return redirect('home') # 将'home'替换为您首页视图的URL名称
else:
error_message = "用户名或密码错误"
return render(request, 'login.html', {'error_message': error_message})
return render(request, 'login.html')
在 myapp
文件夹内创建一个名为 templates
的新文件夹。然后,在 templates
文件夹中创建一个名为 login.html
的新文件,并添加以下代码:
<!DOCTYPE html>
<html>
<head>
<title>登录</title>
</head>
<body>
<h1>登录</h1>
{% if error_message %}
<p>{{ error_message }}</p>
{% endif %}
<form method="post">
{% csrf_token %}
<label for="username">用户名:</label>
<input type="text" id="username" name="username" required><br>
<label for="password">密码:</label>
<input type="password" id="password" name="password" required><br>
<input type="submit" value="登录">
</form>
</body>
</html>
打开 myapp/urls.py
文件,并添加以下代码:
from django.urls import path
from . import views
urlpatterns = [
path('login/', views.login_view, name='login'),
# 在这里添加您应用的其他视图URL
]
打开 myproject/urls.py
文件,并添加以下代码:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('myapp.urls')),
]
现在,您可以运行 Django 开发服务器并测试您的登录页面:
python manage.py runserver
在您的 Web 浏览器中访问 http://127.0.0.1:8000/login/
,您应该能够看到登录页面。您可以通过提供有效或无效的凭据来测试登录功能。
注意:这只是一个简单的登录页面实现。在真实场景中,您会想要使用 Django 内置的身份验证系统或实现其他安全措施,例如密码哈希和用户注册。此示例不涵盖用户注册或注销功能,但可以添加这些功能。