2013-11-21 137 views
1

基本上這個想法是,特定的QuerySet中的每個方法都必須使用一個變量。所以定義在__init__變量似乎是一個好辦法:Django __init__ QuerySet

class SomeQuerySet(models.QuerySet): 
    def __init__(self,something): 
     self.something = something 
     #what goes here??? 
    #... 

現在我知道Django的工作方式,在QuerySet必須有一些非常重要的代碼__init__,而這將覆蓋它。 我需要添加到這個__init__以便它不會中斷QuerySet

回答

3

嘗試super(SomeQuerySet, self).__init__(self, *args, **kwargs),同時將__init__方法更改爲def __init__(self, something, *args, **kwargs)QuerySet本身正在使用__init__方法中的參數,因此您需要將它們傳遞給它。

+0

雖然''args'中不會有'something'? –

+0

等待nvm,那是沒有道理的!謝謝。 –

+0

我會的,我不允許再接受5分鐘 –