Django 实现登录功能

基本实现

路由

python 复制代码
from django.urls import path
from . import views

app_name = 'index'
urlpatterns = [
    path('', views.index, name='index'),
    path("login.html/", views.login, name="login"),
]

视图

python 复制代码
from django.shortcuts import render, redirect
from django.views.decorators.csrf import csrf_exempt


def index(request):
    return render(request, "index.html")


def login(request):
    if request.method == "POST":
        username = request.POST.get('username')
        password = request.POST.get('password')
        if username == "zhangdapeng" and password == "zhangdapeng520":
            return redirect("index:index")
    return render(request, "login.html")

模板

登录页面:这个页面中,我们使用csrf生成一个隐藏输入框,这样Django会检测是否为CSRF跨站攻击。然后给出了用户名和密码的输入框,以及一个登录按钮。

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>登录</h1>
<form action="{% url 'index:login' %}" method="post">
    {% csrf_token %}
    <div>
        <label for="username">账号</label>
        <input type="text" id="username" name="username">
    </div>
    <div>
        <label for="password">密码</label>
        <input type="password" id="password" name="password">
    </div>
    <div>
        <button type="submit">登录</button>
    </div>
</form>
</body>
</html>

首页:这个页面非常简单,只需要展示自己是首页即可。

html 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>首页</h1>
</body>
</html>
相关推荐
程序设计实验室20 小时前
当人人都能用 AI 写代码时,我为什么选择重回 Django?
django·djangostarter
zone773920 小时前
001:简单 RAG 入门
后端·python·面试
F_Quant20 小时前
🚀 Python打包踩坑指南:彻底解决 Nuitka --onefile 配置文件丢失与重启报错问题
python·操作系统
允许部分打工人先富起来21 小时前
在node项目中执行python脚本
前端·python·node.js
IVEN_21 小时前
Python OpenCV: RGB三色识别的最佳工程实践
python·opencv
haosend1 天前
AI时代,传统网络运维人员的转型指南
python·数据网络·网络自动化
曲幽1 天前
不止于JWT:用FastAPI的Depends实现细粒度权限控制
python·fastapi·web·jwt·rbac·permission·depends·abac
IVEN_2 天前
只会Python皮毛?深入理解这几点,轻松进阶全栈开发
python·全栈
Ray Liang2 天前
用六边形架构与整洁架构对比是伪命题?
java·python·c#·架构设计
AI攻城狮2 天前
如何给 AI Agent 做"断舍离":OpenClaw Session 自动清理实践
python