首页 > 解决方案 > 在 Django 应用程序中初始化 GraphQL 客户端的位置

问题描述

我正在用 Django 构建一个 API,我想查询 Github GraphQL API,我发现这个适用于我需要的 Python GraphQL 客户端。

但是现在,我想知道,在我的 Django 应用程序中初始化这样一个客户端的正确位置在哪里?在请求里面?在apps.py 中?在views.py中?任何指导方针将不胜感激!这是我当前的 Django 项目文件夹结构:

.
├── LICENSE
├── README.md
├── api
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── migrations
│   │   └── __init__.py
│   ├── models.py
│   ├── tests.py
│   ├── urls.py
│   └── views.py
├── db.sqlite3
├── manage.py
├── portfolio
│   ├── __init__.py
│   ├── asgi.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
├── requirements.txt
└── setup.py

提前致谢!

标签: pythondjangographql

解决方案


根据定义,graphql 客户端需要它自己的配置、模块和错误处理,我建议您创建一个与其他项目相邻的命名空间。Django 使用应用程序的概念,为这种情况提供单独的配置、日志记录和错误处理。您在settings.pyin INSTALLED_APPS( Docs ) 中定义项目中的其他应用程序。您的项目结构将看起来像:

.
├── LICENSE
├── README.md
├── graphql-client
│   ├── __init__.py
│   ├── main.py
│   ├── client.py
│   ├── ressources
│   │   ├── __init__.py
│   ├── ├── repository.py
│   │   └── user.py
│   ├── settings.py
│   └── views.py
├── api
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── migrations
│   │   └── __init__.py
│   ├── models.py
│   ├── tests.py
│   ├── urls.py
│   └── views.py
├── db.sqlite3
├── manage.py
├── portfolio
│   ├── __init__.py
│   ├── asgi.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py
├── requirements.txt
└── setup.py

推荐阅读