/ / Python / django herda de 2 classes - python, django, django-users

Python / django herda de 2 classes - python, django, django-users

No meu projeto django eu tenho 2 variações de usuários. Uma subclasse de classe de usuário de django.auth e segunda usa quase os mesmos campos, mas não é um usuário real (por isso não herda do usuário). Existe uma maneira de criar uma classe FieldUser (que armazena apenas campos) e para RealUser subclasse tanto FieldUser como User, mas para a subclasse FakeUser apenas FieldUser?

Respostas:

4 para resposta № 1

Claro, eu usei herança múltipla em modelos de Django, funciona bem.

Parece que você quer configurar uma classe abstrata para o FieldUser:

class FieldUser(models.Model):
field1 = models.IntegerField()
field2 = models.CharField() #etc
class Meta:
abstract=True #abstract class does not create a db table

class RealUser(FieldUser, auth.User):
pass #abstract nature is not inherited, will create its own table to go with the user table

class FakeUser(FieldUser):
pass #again, will create its own table