2017-04-24 43 views
0

我想打电话给定制的装饰每节只有一次如何每次会话只调用一次django装饰器?

def cust_decorator(function): 
    def wrapper(request,*args, **kwargs): 
     ........ 
     ....... 

wrapper.__doc__ = function.__doc__ 
wrapper.__name__ = function.__name__ 
return wrapper 

我想每节只有一次打电话cust_decorator装饰特定用户

+0

视图装饰器在每次调用视图时都会运行,因此它们可能不是每次会话运行一次的最佳方式。您可以在会话中存储标志,检查装饰器中的标志,并且只在标志未设置时才运行代码。 – Alasdair

+0

有没有其他办法? – stone

+0

你这样做实际上是在做什么? – Sayse

回答

0

您可以设置一个会话变量当装饰已被首次调用并检查此值以确定警报是否应再次显示。另一种方式可能是编写自己的中间件。

相关问题