七. Django项目之电商购物商城 -- 退出登录

简介: 七. Django项目之电商购物商城 -- 退出登录

Django项目之电商购物商城 – 退出登录状态

需要开发文档和前端资料的可私聊

退出登录主要是基于Django自带的logout模块 , 该功能只有在登录是保存了用户状态才可以实现调用

一. 创建退出视图

class LogoutView(View):
    def get(self , request):
        # 删除用户数据
        logout(request)
        # 删除cookies中的用户名
        response = redirect("index")
        response.delete_cookie('username')
        return response

二. 完善登录视图

该部分的主要目的是实现用户登录后 , 在主页中显示用户名信息 , 以及退出选项

–未登录的状态

–登录后显示用户名 , 以及退出选项

在cookie中保存用户名

response = redirect('index')
response.set_cookie("username" , user.username , 3600)
# 重定向到首页
return render(request , 'index.html' , {"login_msg":1})

三.创建退出路由

# 退出
    path('logout/' , views.LogoutView.as_view() , name = 'logout'),

四. 修改首页html

如果用户登录成功 , 后端返回login_msg值为真显示用户名和退出选项

{% if login_msg  %}
    <div  class="login_btn fl">
        欢迎您:<em> [[ username ]] </em>
        <span>|</span>
        <a href="{% url 'logout' %}">退出</a>
    </div>
{% endif %}


相关文章
|
14小时前
|
前端开发 数据库 Python
Django入门全攻略:从零搭建你的第一个Web项目
Django入门全攻略:从零搭建你的第一个Web项目
|
9天前
|
前端开发 数据库 Python
Python Django项目下的分页和筛选查询
在Django中实现分页功能,视图函数通过`Paginator`处理数据,每页显示10条记录。URL配置支持带参数和不带参数的分页请求。前端模板使用for循环展示分页数据,包括商品信息和状态按钮,并利用分页组件导航。筛选查询视图根据GET请求的`state`参数过滤上架或下架产品,同样实现分页功能。前端添加状态选择下拉框,分页链接携带查询参数`state`确保筛选状态在翻页时保持。
|
11天前
|
人工智能 关系型数据库 Docker
【Django项目】 通过AI实现视频转文字
【Django项目】 通过AI实现视频转文字
|
12天前
|
存储 前端开发 API
[译]Django项目最常用的20个包
[译]Django项目最常用的20个包
|
12天前
|
小程序 前端开发 JavaScript
计算机Python项目|django傣族节日及民间故事推广小程序
计算机Python项目|django傣族节日及民间故事推广小程序
|
12天前
|
前端开发 JavaScript 数据安全/隐私保护
计算机Python项目|django学生成绩管理系统
计算机Python项目|django学生成绩管理系统
|
14天前
|
缓存 JSON API
在django项目中使用装饰器管理路由
【6月更文挑战第12天】本文介绍了Python装饰器在API管理中的应用,包括用于延迟计算、缓存和转换函数的装饰器。实践中,以Django Rest Framework为例,演示了如何使用装饰器定义GET、POST、PUT和DELETE请求的视
14 1
|
9天前
|
存储 JavaScript 前端开发
Python Django下的实现注册验证码
摘要: 使用Python生成随机验证码图像,包括干扰线和噪点,保存到静态文件夹,并将验证码文本存储到数据库。数据库表包含ID、验证码图片路径和验证码文本。JavaScript函数`getRandomInt`生成1到300的随机数,用于请求对应数据库条目的验证码和图片。XMLHttpRequest发送POST请求到服务器,视图函数返回指定ID的验证码图片路径,实现验证码的动态刷新。
|
14天前
|
开发框架 数据库 开发者
Web开发新境界:用Python玩转Django和Flask!
【6月更文挑战第12天】Python的Web开发框架Django和Flask各有千秋。Django是全能型框架,适合快速开发大型应用,提供ORM、模板引擎、URL路由和后台管理等全面功能。Flask则轻量级且灵活,适用于小型到中型应用,以其简单易用、高度可扩展和灵活路由著称。两者结合使用,能应对各种Web开发需求。
|
18天前
|
Linux 数据库管理 Python
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)
111 4