首页 > 解决方案 > 如何重命名从 Django 模型自动生成的 GraphQL 类型字段?

问题描述

我在 Django 中有一个带有一些字段的模型。让我们说这个示例:

# <app>/models.py

from django.db import models


class Something(models.Model):
    first_field = models.Charfield()
    second_field = models.Charfield()

我使用DjangoObjectTypefromgraphene_django将 Django 模型映射到 GraphQL 类型。

# <app>/schema.py

from graphene_django import DjangoObjectType
from .models import Something


class SomethingType(DjangoObjectType):
    class Meta:
        model = Something

将模型字段自动驼峰化的原因导致second_fieldGraphQLsecondField类型。现在我想将 GraphQL 类型字段从 重命名secondFieldsomethingFancy。我怎样才能最容易地完成这项工作?

标签: djangodjango-modelsgraphqlgraphene-django

解决方案


您可以使用 DjangoObjectType 覆盖任何字段。您的代码可能如下所示。

class SomethingType(DjangoObjectType):

    class Meta:
       model = Something


   something_fency = graphene.String()

   def resolve_something_fency(self, info):
       return self.second_field

有关更多详细信息,请查看文档


推荐阅读