首先尝试使用django.utils.functional.lazy装饰器。我的函数返回两个列表,所以我用@lazy(list,list)来装饰它。它是一个简单的jane函数,而不是类的方法/属性。
当我尝试调用生成的修饰函数时,我得到一个“'代理'对象不可调用”。
答案 0 :(得分:4)
我认为你不能使用Django作为装饰者的懒惰。您可以将其用作函数调用:
lazy_function = lazy(f, type)
其中f
是您需要延迟的函数,type
是预期的数据类型。
另外,你如何归还这两个名单?像:
def a():
return [], []
如果是,那么从技术上讲,你将返回一个元组,因此你应该使用lazy:
lazy_f = lazy(f, tuple)