Ariadne为与Django和GraphQL一起工作的贡献库
项目描述
Ariadne Extended
Ariadne附带了一些贡献模块来支持与Django的集成。此模块充当额外的Django贡献模块,以减少与Django集成时的样板代码。
它复制并遵循Django Rest Framework中定义的一些约定,将努力提供与某些相关DRF扩展模块的API兼容性。
总体目标是提供常用模块和GraphQL模式,这样就不必在每个项目中重新创建它们。
支持的DRF模块
- 分页类
- 权限类
- 序列化类(可能不会删除并通用化)
- 节流
- django-filters筛选后端
支持的Django版本
2.2.*, 3.0.*
ariadne_extended.graph_loader
自动模式、解析器和类型加载器
搜索 types
和 resolvers
模块,以及任何安装的 Django 应用程序中定义的任何 .graphql
文件。
一旦找到,它们可以用于构建您 ariadne 应用的最终模式和解析器解决方案。
ariadne_extended.payload
为 graphql Payload
接口提供的模式、类型和解析器。
目前,FieldErrors
与 Django rest framework 字段验证异常高度耦合。
ariadne_extended.cursor_pagination
是否将其重命名为 relay_pagination?
包含用于利用基于游标的分页的 PageInfo
graphql 类型和 Connection
接口。
TODO:我们是否应该提供用于游标分页的输入类型,而不仅仅是复制分页参数信息到可分页列表字段中??
ariadne_extended.filters
用于将过滤参数传递给 django-filter 的过滤后端接口。
ariadne_extended.resolvers
用于基于类的解析器和利用 DRF 序列化器进行数据保存的模型解析器的 ABC。这可能在将来发生变化。
ariadne_extended.uuid
用于可能与 UUID 作为其主键或其他 UUID 字段一起使用的模型的 DRF UUID 字段标量。
贡献
django-waffle
在 ariadne_extended.contrib.waffle_graph
添加了可以用于查询任何 waffle 标志、样本和开关的解析器、模式和类型。
清单
- 摆脱对 DRF 的依赖?
- 调查对序列化器的需求(嵌套数据依赖?)
- 将代码组织到多个 Django 应用程序中,以选择所需的组件
- 文档和示例
- 当与 django-filters 一起使用时,更好地支持枚举列表(目前期望逗号分隔的列表字符串,而不是来自输入字段解析器的枚举列表)
- 许可证和公开发布
- 部署自动化
- 混入与序列化器高度耦合,它们是否仍然应该这样?
项目详情
下载文件
下载适用于您的平台文件。如果您不确定选择哪个,请了解更多关于 安装软件包 的信息。
源分布
ariadne-extended-0.2.5.tar.gz (22.5 kB 查看散列)
构建分布
ariadne_extended-0.2.5-py3-none-any.whl (28.7 kB 查看散列)
关闭
ariadne-extended-0.2.5.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | b740a8ac437a73cc012a803ae39f77318bd4f927c849b2d3d7b3c566ae85f0fc |
|
MD5 | 75649a70734f7b60b974addb6454d8ec |
|
BLAKE2b-256 | 7e2ed236ef9e9ec14a670d371f9663f008d829a362afa512dd86754871b8435f |