Django-EnumFields可以让你结合Django中的Enum字段(线索在标题中)。如何在Django中组合/嵌套EnumFields?
你能结合这些巢吗?
下面是扮演过一个例子docs:
from django.db import models
from django_enumfield import enum
class BeerStyle(enum.Enum):
LAGER = 0
STOUT = 1
WEISSBIER = 2
class SoftDrinkStyle(enum.Enum):
COKE = 3
LEMONADE = 4
class Drink(models.Model):
style = enum.EnumField(????, default=BeerStyle.LAGER)
我不知道是什么会去代替????
,或是否有更好的方式来获得与此嵌套/组合发挥出Django的。我主要想问我是否需要Enum行为,并具有探测不同类型的能力,例如在保存方法中,如果饮料是或者输入Beer
,则检查User
年龄。
这可能吗?玩了这一点,我没有看到如何。
如果“饮料”需要年龄限制和其他行为,为什么不使用模型呢? Enum似乎不是在这里使用的正确工具。 – 2015-02-08 22:40:21
@HåkenLid,因为我给出的例子实际上并不是我所拥有的很好的表示。我确信我想在我的例子中使用枚举,因为它提供的选择永远不会改变或增长。 – Pureferret 2015-02-09 08:01:05