要在Django中实现GraphQL API开发,您可以使用第三方库 graphene-django
来实现GraphQL与Django的集成。以下是一些基本步骤:
graphene-django
库。您可以使用 pip 安装该库:pip install graphene-django
graphene_django
添加到 INSTALLED_APPS
中:INSTALLED_APPS = [
...
'graphene_django',
]
graphene-django
的 DjangoObjectType
来定义您的模型对象的 GraphQL 类型。例如:from graphene_django.types import DjangoObjectType
from myapp.models import MyModel
class MyModelType(DjangoObjectType):
class Meta:
model = MyModel
urls.py
文件中,将 GraphQL 视图添加到路由中。您可以使用 graphene_django.views
中的 GraphQLView
类来处理 GraphQL 请求:from django.urls import path
from graphene_django.views import GraphQLView
from .schema import schema
urlpatterns = [
path('graphql/', GraphQLView.as_view(graphiql=True, schema=schema)),
]
import graphene
from graphene_django.types import DjangoObjectType
from myapp.models import MyModel
class MyModelType(DjangoObjectType):
class Meta:
model = MyModel
class Query(graphene.ObjectType):
my_model = graphene.Field(MyModelType)
def resolve_my_model(self, info, **kwargs):
return MyModel.objects.first()
schema = graphene.Schema(query=Query)
现在,您可以通过访问 http://localhost:8000/graphql/
来访问您的 GraphQL API,并使用 GraphiQL 工具来测试和查询您的 API。您可以根据您的需求来定义更多的 GraphQL 类型和查询。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。