Same field, diferentes escolhas nas subclasses do modelo Django
É possível usar diferenteschoices
para subclasses de modelos? O código a seguir deve lhe dar uma idéia
class Clothing(models.Model):
size = models.CharField(max_length=1)
colour = models.CharField(max_length=1)
SHIRT_SIZES = {
'S','Small',
'M','Medium',
'L','Large',
}
class TShirt(models.Model):
size = models.CharField(max_length=1, choices=SHIRT_SIZES)
MENS_CHOICES = {
'K','Black',
'R','Red',
'B','Blue',
}
class MensColours(models.Model):
colour = models.CharField(max_length=1, choices=MENS_CHOICES)
class MensShirt(MensColours, TShirt):
class Meta:
verbose_name = "men's shirt"
WOMENS_CHOICES = {
'P','Pink',
'W','White',
'B','Brown',
}
class WomensColours(models.Model):
colour = models.CharField(max_length=1, choices=WOMENS_CHOICES)
class WomensShirt(WomensColours, TShirt):
class Meta:
verbose_name = "women's shirt"
A razão pela qual estou usando mixins é que tenho atributos / opções que podem ser compartilhados entre diferentes modelos (por exemplo, também ter calças de mulheres / homens, que podem ter as mesmas cores, mas com tamanhos diferentes das camisetas). No geral, porém, todas as roupas têm uma cor e um tamanh
Como devo fazer isso?