django的真正python枚举。
django-choice-enumfields的Python项目详细描述
这个包允许您在django中使用真正的python(PEP435样式)枚举。
安装
- pip install django-choice-enumfields
包括的工具
选项枚举
通常,您只使用普通的PEP435样式的枚举,但是,django choice枚举字段 它还将自己的ChoiceEnum版本与一些额外的铃铛和口哨包在一起。 也就是说,在管理中使用的标签的智能定义 下拉列表。默认情况下,它将通过标题大小写常量来创建标签 名字。您可以使用选项定义枚举项来提供自定义标签
fromenumfieldsimportEnumField,ChoiceEnum,Choice# Our own Enum classclassColor(ChoiceEnum):RED=Choice('r','A custom label')GREEN='g'BLUE='b'classMyModel(models.Model):color=EnumField(Color,max_length=1)assertColor.GREEN.label=='Green'assertColor.RED.label=='A custom label'
EnumFieldListFilter
提供了enumfields.admin.EnumFieldListFilter以允许在中使用枚举 list_filter。
fromenumfields.adminimportEnumFieldListFilterclassMyModelAdmin(admin.ModelAdmin):list_filter=[('color',EnumFieldListFilter)]