dj鲜生-27-登陆装饰器-使用django内置的登陆装饰器
部分页面要求登陆后可见
没有登陆的用户,不让他访问
使用登陆验证装饰器实现
使用说明
导入函数
from django.contrib.auth.decorators import login_required
装饰视图类
清除缓存数据
登陆测试
访问用户中心,会被强制跳转
/user
部分页面要求登陆后可见
没有登陆的用户,不让他访问
使用登陆验证装饰器实现
使用说明
导入函数
from django.contrib.auth.decorators import login_required
装饰视图类
用法,使用
login_required 来包一下 视图函数
如果用户没有登陆,对应视图会做一个页面的跳转
清除缓存数据
清除缓存数据,主要目的是清掉cookie值
登陆测试
访问用户中心,会被强制跳转
/user
期望他跳转到指定的页面
# 用户未登陆跳转的页面
LOGIN_URL='/user/login'
再次测试
访问
跳转
注
next 的值 就是之前尝试访问但又被挡回来的路径
登陆后的跳转
如果用户通过登陆页面成功登陆了,期望可以跳转到之前被禁止访问的页面
之前用户尝试访问 /user 页面
操作小结
一,导入方法
在路由文件中导入login_required装饰器
from django.contrib.auth.decorators import login_required
二,路由中用装饰器包视图函数
例如:
三,配置一下跳转的位置
在settings.py中添加配置
# 配置登陆后跳转的地址
LOGIN_URL='/user/login'
逻辑图
dj鲜生-27-登陆装饰器-使用django内置的登陆装饰器相关推荐
- python内置哪些装饰器_Python内置的wraps装饰器有什么用
Python装饰器(decorator)在实现的时候,被装饰后的函数其实已经是另外一个函数了(函数名等函数属性会发生改变),为了不影响,Python的functools包中提供了一个叫wraps的de ...
- [EntLib]微软企业库5.0 学习之路——第五步、介绍EntLib.Validation模块信息、验证器的实现层级及内置的各种验证器的使用方法——上篇...
本文是为后面的学习之路做铺垫,简单介绍下企业库中的Validation模块的一些相关知识,包括Validation模块的简介.用途.使用方法.默认提供的多种验证器的介绍等. 一.简介及用途 在实际的项 ...
- dj鲜生-34-存档-用户中心地址页重复查询默认地址的优化-利用自定义模型管理器的方法来实现
复习模型类管理器 django-模型类管理器 - pyhui的python全栈技术博客 - CSDN博客 https://blog.csdn.net/ifubing/article/details/1 ...
- dj鲜生-28-登陆验证父类的使用-Mixin类的定义
操作小结 创建一个目录和一个文件 文件中写一个登陆验证的mixin类 from django.contrib.auth.decorators import login_required class L ...
- dj鲜生-01-新建项目-配置数据库
静态页面地址 静态文件资源下载: https://cloud.189.cn/t/U7vAjafAfAVb (鲜生电商-静态页面) 创建一个项目 pycharm打开项目 数据库的准备 新建一个数据库 & ...
- dj鲜生-10200818-商品首页展示-静态页下载资源
静态页资源下载 https://cloud.189.cn/t/fqq6Vr36nIf2 (鲜生电商-静态页面) 商品首页模板处理 index.html页首理 生鲜首页的抽取过程,详解 - 知乎 htt ...
- dj鲜生-38-项目上线简介-从本地小项目到云服务的调试
小结 项目上线要做的事情有: 代码传到linux虚拟机上 准备相关的运环境 配置好ip与端口 让程序跑起来 项目上线,就是把windows上的代码,拷备到linux上,让代码跑起来 在win上跑代码的 ...
- dj鲜生-35-设置django的session使用redis来存储
session的回顾 使用redis存储session 一 安装 pip install django-redis 二 配置缓存连接redis # Django的缓存配置 CACHES = {&quo ...
- python基础二 函数 递归 装饰器 迭代器 生成器 内置函数 二分法应用
函数 迭代器 生成器 拆包和装包 tup=("j1","a1","c1","k1") a,b,c,d=tup print ...
最新文章
- 引用 引用 引用 学会求知 学会共处 学会做人 学会做事
- 数值比较器实现_伺服操作器FBQA7000销售-老友网
- jvm性能调优 - 02JVM中内存区域
- 网页设计html最简单水印方法,前端canvas水印快速制作(附完整代码)
- Android开发之最简单的布局点击Tab和Fragment切换源码(特别适合初学者)
- 疯子的算法总结11--次小生成树+严格次小生成树
- 为什么在极端恶劣环境下不能使用商用以太网交换机?
- win7无法连接打印机拒绝访问_“Windows无法连接打印机,操作失败,错误为0x000003e3”...
- Java Jackson
- 将文本文件内容存储在DataSet中的方法总结
- 你就非得 TCP?为啥不直接 UDP 呢!
- 应用SqlParameter防止注入式攻击,打开主窗体关闭登录窗体
- CF959A Mahmoud and Ehab and the even-odd game
- JAVA计算机毕业设计实验室耗材管理系统(附源码、数据库)
- 龙格现象python程序_基于切比雪夫多项式的函数插值逼近
- [GIS教程] 5.3 空间数据组织
- educoder 数据库原理与应用 实验六 约束与索引
- java getday_Date类的getDay()和getDate()方法
- 引用 CPU : 什么是超频,怎么给CPU超频?
- 《第一行代码》总结之简介、Activity(一)
热门文章
- word删除分节符后之前的格式乱了_分页符分节符,你知道多少
- Mybatis(9)Dao实现类和无实现类的执行过程
- 在线颜色拾取器 - 资源篇
- java 子类的同名方法_java 父类子类有同名方法时如何调用的实现
- 帝国CMS模板|中国历史网整站数据MIP源码下载、带Tags提取插件
- 博客杂志CMS模板,wpdx3.6破解版源码WordPress主题
- java马克思手稿_java 循环嵌套解决一元,二元,三元方程(增长率,鸡兔同笼,马克思手稿)...
- nrm:安装与配置记录
- gradle 编译java配置文件_Andriod(三):配置文件build.gradle与AndroidManifest.xml
- Hashtable Dictionary[必看]