2014-11-08 150 views
1

我已經與一些字段和方法這樣一個Django模型:Django的模型派生類

class Follow(models.Model): 
    fields = ... 

    def methods(self, ...): 
     ... 

。我想在這個新的模型來創建具有相同的字段和方法的另一個模型,但是我想有新的領域和方法,以及像這樣:

class Auto(Follow): 
    additionalfields = ... 

    def additionalmethods(self, ...): 
     ... 

,但在這種情況下,問題是,如果我創建一個自動對象,它也將出現在Follow.objects.filter() QuerySet中。我怎麼能解決它呢?一個想法是在這兩個相關值的模式,以指定is_auto = models.BooleanField(默認值=?)場,但schemamigration期間失敗:

django.core.exceptions.FieldError: Local field 'autob' in class 'Auto' clashes 
with field of similar name from base class 'Follow' 

。任何想法如何解決它?

回答

2
class BaseItem(models.Model): 
    #fields and methods 

class Follow(BaseItem): 
    pass 

class Auto(BaseItem): 
    #additional fields 
+0

哦,簡單!非常感謝! : - )。 – user2194805 2014-11-08 10:25:14