GrapheneDjango使用枚举变异类型

2024-04-24 13:12:28 发布

您现在位置:Python中文网/ 问答频道 /正文

因此,我有以下模型:

class Semester(models.Model):
    course = models.ManyToManyField(Course, through='CourseSemester')

    class SemesterType(models.TextChoices):
        A = 'A', 'Winter'
        B = 'B', 'Spring'
        SUMMER = 'SU', 'Summer'

    name = models.CharField(
        max_length=200,
        choices=SemesterType.choices,
        default=SemesterType.A,
    )
    year = models.IntegerField()

我试着增加一个变异来增加一个新学期。Graphene django似乎会自动为我生成一个枚举字段,但如何在参数中获得它呢

根据github的问题,像SemesterType._meta.fields['name']这样的东西应该可以工作,但我无法正确使用它,即使将它包装在graphene.Argument

可以告诉Graphene不要将其转换为Enum,但如果可能的话,我宁愿避免这样做

有什么线索可以证明这一点吗


Tags: name模型modelmodelsclassgraphenechoicescourse