我正在使用石墨烯和石墨烯-django,我对带有选项的IntegerField有一个问题。石墨烯创建一个枚举,如果值为1,则输出为"A_1“;如果值为2,则输出为"A_2”,依此类推。示例:
# model
class Foo(models.Model):
score = models.IntegerField(choices=((1, 1), (2, 2), (3, 3), (4, 4), (5, 5)))
# query
query {
foo {
score
}
}
# response
{
"data": {
"foo": {
"source": "A_1"
}
}
}如何覆盖此输出?
(注:我从一个老帖子中复制了这个问题,但今天没有任何适当的评论,因为它来自4.5年前。我今天也遇到了同样的问题)谢谢
发布于 2021-07-09 23:04:18
def get_score(enum_output):
return enum_output.split('_')[1]
####
{
"data": {
"foo": {
"source": get_score("A_1")
}
}发布于 2021-07-11 03:43:29
实际上,我已经在石墨烯文档中找到了正确的答案,
我们应该在模式突变中的节点类下添加像convert_choices_to_enum = False这样的行,以禁用这种自动转换。
文档页面的确切链接是https://docs.graphene-python.org/projects/django/en/latest/queries/
https://stackoverflow.com/questions/68318897
复制相似问题