【解决方案1】:

目前在 github 上有一个名为 django-mysql 的 python 包,基于添加这些,虽然我没有仔细研究它们是如何实现的,但是通过阅读这个包的这一部分的 documenation,我发现它在数据库上实现了一个枚举字段,您可以查看以下示例以了解如何使用此包进行操作。

from django.db import models
from django_mysql.models import EnumField


class BookCoverColour(models.TextChoices):
    RED = "red"
    GREEN = "green"
    BLUE = "blue"


class BookCover(models.Model):
    colour = EnumField(choices=BookCoverColour.choices)

【讨论】: