Django项目--登录判断装饰器
view.py中定义登录判断装饰器函数
def login_required(view_func):'''登录判断装饰器'''def wrapper(request, *view_args, **view_kwargs):# 判断用户是否登录if request.session.has_key('islogin'):# 用户已登录,调用对应的视图return view_func(request, *view_args, **view_kwargs)else:# 用户未登录,跳转到登录页return redirect('/login')return wrapper
使用时,在函数前边添加@login_required即可。
@login_required
def change_pwd(request):'''显示修改密码页面'''return render(request, 'booktest/change_pwd.html')
@login_required
def change_pwd_action(request):'''模拟修改密码处理'''# 1.获取新密码pwd = request.POST.get('pwd')# 获取用户名username = request.session.get('username')# 2.实际开发的时候: 修改对应数据库中的内容...# 3.返回一个应答return HttpResponse('%s修改密码为:%s'%(username,pwd))
Django项目--登录判断装饰器相关推荐
- Flask实战2问答平台-登录限制(装饰器)
我们来解决上一文章说到的,为登录不能点击发布问答功能 (一)先写一个装饰器 装饰器教程参考廖雪峰教程 http://t.cn/RK0SaGl from functools import wraps # ...
- React使用cra创建项目,开启装饰器
前言 今天使用 cra 创建了个项目.打算研究一下 rc-form 的实现思路.发现项目并未开启装饰器.并提示下面的错误. Support for the experimental syntax 'd ...
- 给django视图类添加装饰器
要将login_required装饰到view class的dispatch方法上, 因为dispatch方法为类方法,不是单个的函数,所以需要将装饰函数的装饰器 login_required转化为装 ...
- django ----CBV中加装饰器
CBV中加装饰器 from django import views from django.utils.decorators import method_decorator def login_aut ...
- Django框架(26.Django中的CSRF以及登录装饰器)
CSRF简介 CSRF全拼为Cross Site Request Forgery,译为跨站请求伪造.CSRF指攻击者盗用了你的身份,以你的名义发送恶意请求.CSRF能够做的事情包括:以你名义发送邮件, ...
- Django项目实战——8—(判断用户是否登录并返回JSON、Django发送邮件的配置、生成邮箱验证链接、验证邮箱后端逻辑)
1.判断用户是否登录并返回JSON 重要提示: 只有用户登录时才能让其绑定邮箱. 此时前后端交互的数据类型是JSON,所以需要判断用户是否登录并返回JSON给用户. 方案一: 使用Django用户认证 ...
- 从原理到实践:装饰器模式如何在项目中落地详解(给原对象增加新的行为和功能)
装饰器模式---- 不修改原始对象,给原对象增加新的行为和功能. 2.1.概念 装饰器模式(Decorator Pattern)是一种结构型设计模式,它允许动态地向对象添加额外的功能,而无需修改其原始 ...
- python if后面要不要加括号_Python装饰器兼容加括号与不加括号的写法
使用Django的时候,我发现一个很神奇的装饰器:@login_required, 这是控制一个view的权限的,比如一个视图必须登录才可以访问,可以这样用: 1 2 3 4 @login_requi ...
- Python“三大器”之装饰器1
一.装饰器 1.什么是装饰器? 装饰:装饰.修饰 器:工具 装饰器:装饰的工具 (*****)"开放封闭":装饰器必须要遵循"开放封闭"原则: 开放:对函数功能 ...
最新文章
- 想读博士?进来看看!
- 十年——透过BILL的眼睛
- SAP BPC最佳实践-SAP BPC的OLAP引擎比较(MS OLAPBW OLAP)
- 深入浅出理解Javascript原型概念以及继承机制(转)
- oracle 排序的分析函数,oracle下数据的排序分组row_number() over()--分析函数,可用于去重...
- 终于有人把机器学习中的评价指标讲清楚了
- TJU Problem 2857 Digit Sorting
- 没有安装hiredis
- Linux as 5 下部署oracle 10.2.0.1(2)
- 为什么人们常说“十个创业九个死”?
- 用matlab画相频曲线_用MATLAB进行系统频率特性曲线绘制
- Discuz!开发之HTML转Discuz代码(bbcode)函数html2bbcode()
- 了解 HTTP 看这一篇就够
- oracle的音标,oracle的意思在线翻译,解释oracle中文英文含义,短语词组,音标读音,词源【澳典网ODict.Net】...
- Leetcode——714. Best Time to Buy and Sell Stock with Transaction Fee
- 数据架构与算法——C/C++实现冒泡排序(Bubble Sort)算法【建议收藏】
- Java------IO流与异常处理机制 详解
- Java多线程超时判断
- 神经网络算法对车牌价格的预测
- java解析 电力协议_DLT645解析JAVA JAVA解析DLT645电表通信协议 - 下载 - 搜珍网