def login_check(func): @wraps(func) def inner(request,*args,**kwargs): # ret = request.get_signed_cookie('is_login',default=0,salt='dsd',max_age=10) r... ...
分类:
其他好文 时间:
2019-09-09 14:33:37
阅读次数:
123
[TOC] Decorator(装饰器)模式属于结构型模式。 比如当其需要三种不同的附加特性,可以为其创建三个派生类。但是若它还需要同时具有其中两种特性或者是各种特性的任意组合的时候,类继承的方法就不再适合了。 它允许向一个现有的对象不通过继承来添加新的功能,同时又不改变其结构。 一个例子(贪玩蓝月 ...
分类:
其他好文 时间:
2019-09-05 18:15:16
阅读次数:
96
单例模式 什么是单例模式 单例模式:基于某种方法实例化多次得到的实例就是同一个 为什么用单例模式 当实例化多次得到的对象中存放的属性都是一样的情况,应该将多个对象指向同一个内存, 即同一个实例 1.单例模式(类内部定义静态方法) 2.单例模式(装饰器) 3.单例模式(元类) 4.单例模式(模块) 模 ...
分类:
其他好文 时间:
2019-09-04 21:29:33
阅读次数:
89
很多人对装饰器难以理解,原因是因为以下三点内容没有搞清楚 1、关于函数变量的理解(或者是变量函数的理解) 2、关于高阶函数的理解 3、关于函数嵌套的理解 1、装饰器 定义和作用:装饰器实际上就是为了给某程序增添功能,但该程序已经上线或已经被使用,那么就不能大批量的修改源代码,这样是不科学的也是不现实 ...
分类:
其他好文 时间:
2019-09-04 13:09:38
阅读次数:
85
项目地址Bee介绍Bee是人力资源系统中的考勤应用,主要功能用于员工申请假单。Bee具有较高的性能、扩展性等,其中包括前后端分离、插拔式的规则验证(验证器)、数据过滤(装饰器)、消息队列等,后端在Laravel的MVC模式上,又添加了Services、Repositories层,明确每个类的职责,使用Passport的密码模式获取接口数据。技术栈服务器:Linux(Centos7)、Nginx前端
分类:
其他好文 时间:
2019-09-04 09:59:49
阅读次数:
108
1.利用装饰器在视图中拦截未登录的url 这种方法适合于程序中只有少数几个需要登录拦截的url。 2. 利用中间件技术拦截未登录的url 2.1 在settings.py添加MIDDLEWARE设置:middleware.LoginCheckMiddleware 2.2 在项目目录下创建middle ...
分类:
Web程序 时间:
2019-09-03 13:36:39
阅读次数:
137
装饰者(Decorator)和具体组件(ConcreteComponent)都继承自组件(Component),具体组件的方法实现不需要依赖于其它对象,而装饰者组合了一个组件,这样它可以装饰其它装饰者或者具体组件。所谓装饰,就是把这个装饰者套在被装饰者之上,从而动态扩展被装饰者的功能。装饰者的方法有 ...
分类:
其他好文 时间:
2019-09-03 00:04:22
阅读次数:
89
恢复内容开始 迭代器: 常用的可以迭代的类型: 下面尝试自己写个可以迭代的类出来: 继续: 但是,此时它已经是个可迭代的对象了,使用如下代码验证: 所以: 但是,还是用不了for 循环。 继续看: 只要使__iter__() 方法返回一个有iter 和next 方法的对象就行了! for 循环的执行 ...
分类:
编程语言 时间:
2019-09-02 23:54:35
阅读次数:
196
装饰器模式(Decorator Pattern) 允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。 通过采用组合、而非继承的手法,De ...
分类:
其他好文 时间:
2019-09-02 17:18:50
阅读次数:
109
今日内容总结:装饰器(闭包函数的一种应用)无参装饰器有参装饰器 装饰器(闭包函数的一种应用) 1. 什么是装饰器器:指的是具备某一功能的工具装饰:指的是为被装饰器对象添加新功能 装饰器就是用来为被装饰器对象添加新功能的工具 需要注意的是:装饰器本身可以是任意可调用对象,被装饰器的对象也可以是任意可调 ...
分类:
编程语言 时间:
2019-09-02 17:17:17
阅读次数:
96