2014-11-08 6 views
1

я»ве модели Джанго с некоторыми полями и методами, как это:Джанго модель производный класс

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

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

. Я бы хотел, чтобы создать еще одну модель с теми же полями и методами, однако в этой новой модели я бы хотел, чтобы новые поля и методы, а также, как это:

class Auto(Follow): 
    additionalfields = ... 

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

, но в этом случае проблема заключается в том, что если я создаю объект Auto, он появится в файле 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

Смежные вопросы