之前在用Django搭web后端的时候,需要做个小功能就是:用户登陆之后长时间未操作会超时自动退出。

 

并且当用户做某些事情,比如下载文件,留言,发送email 都需要先检验当前用户还是否处于已登陆状态。

 

要是在每次事件前面都用 if 判断,代码冗余不说,也影响调试时的心情,简直不能忍。。。

 

直到。。。发现。。。python还有。。。装饰器。。。这个功能!!!

 

@decorator 完美解决问题。。。  

Python装饰器 Decorators

忽然想到手机银行软件(比如动卡空间,经常用。。。老是动不动都提示先登陆。。。),那个超时退出时间更短,往往半分钟未操作就退出了。

需要很多次判断的时候,一句@login 解决所有顾虑,简直帅到没朋友~

 

常见应用Decorator的地方

Python装饰器 Decorators

 

Python装饰器 Decorators

Python装饰器 Decorators

带参数的装饰器

Python装饰器 Decorators

相关文章: