首页 > 解决方案 > 石墨烯 Django:更改字段名称

问题描述

如果我有一个带有法语字段名称的 Django 模型(nomname的法语翻译):

class Categorie(models.Model):
    nom = models.CharField(max_length=100)

    def __str__(self):
        return self.nom

是否可以使用 Graphene Django 配置 GraphQL 查询,以便使用字段的英文翻译查询图形(使用name而不是nom):

query {
  allCategories {
    id
    name
  }
}  

谢谢,

标签: djangographqlgraphene-python

解决方案


当您定义您的DjangoObjectType尝试时:

class CategorieType(DjangoObjectType):
    name = graphene.String()

    class Meta:
        model = Categorie
        exclude_fields = ('nom',)  # Do this only if you want to HIDE "nom"

    def resolve_name(self, info):
        return self.nom

推荐阅读