基本上这个想法是特定QuerySet
中的每个方法都必须使用变量。因此,在__init__
中定义该变量似乎是一种好方法:
class SomeQuerySet(models.QuerySet):
def __init__(self,something):
self.something = something
#what goes here???
#...
现在我知道Django的工作方式,QuerySet
必须有__init__
一些非常重要的代码,这会覆盖它。 我需要向此__init__
添加哪些内容,以便它不会中断QuerySet
?
答案 0 :(得分:3)
在将super(SomeQuerySet, self).__init__(self, *args, **kwargs)
方法更改为__init__
时尝试def __init__(self, something, *args, **kwargs)
。 QuerySet
本身正在使用__init__
方法中的参数,因此您需要将它们传递给它。