graphene-python相关内容

在 Python 中构建 GraphQL 查询字符串的最佳方法

我正在尝试这样做(见标题),但它有点复杂,因为我尝试构建的字符串必须具有以下属性: 多行 包含花括号 我想向其中注入变量 使用普通的 '''''' 多行字符串会使注入变量变得困难.使用多个 f-strings 使注入变量变得容易,但每个花括号,其中有很多,必须加倍.并且 f 必须添加到每一行.另一方面,如果我尝试使用 format,它也会被所有的花括号混淆. 有没有我还没有考 ..
发布时间:2022-01-04 11:13:38 Python

使用 GraphQL 机器,但返回 CSV

普通的 REST API 可能让您以不同的格式请求相同的数据,使用不同的 Accept 标头,例如application/json,或 text/html,或 text/csv 格式的响应. 但是,如果您使用的是 GraphQL,那么 JSON 似乎是唯一可接受的返回内容类型.但是,我需要我的 API 能够返回 CSV 数据以供不理解 JSON 的不太复杂的客户端使用. 如果给定 Ac ..
发布时间:2022-01-04 11:12:25 其他开发

在 GraphQL 中检索对象 ID

我想知道是否有可能获得一个对象的“原始 id"作为查询的结果.每当我向服务器发出请求时,它都会返回节点“全局标识符",类似于 U29saWNpdGFjYW9UeXBlOjEzNTkxOA== . 查询类似于这个: {所有患者(活动:真){边{光标节点{ID状态名称}}} 返回的是: {“数据": {“边缘":[{"cursor": "YXJyYXljb25uZWN0aW9uOjA=", ..
发布时间:2022-01-04 11:01:17 Python

突变 - 批量创建对象

我想用石墨烯一口气创造很多人.文档只提到了这样创建一个人的方法: class CreatePerson(graphene.Mutation):类输入:名称 = 石墨烯.String()年龄 = graphene.Int()ok = graphene.Boolean()人 = 石墨烯.场(拉姆达:人)@静态方法def mutate(root, args, context, info):person ..
发布时间:2022-01-04 10:55:38 其他开发

AttributeError: 类型对象“用户"没有属性“名称"

我是石墨烯的新手,我有这个: from django.contrib.auth.models 导入用户类用户类型(DjangoObjectType):元类:模型 = 用户 基本上,使用 Django 的 User 类会给我这个错误,因为在使用 django User 类之前,我使用的是我自己的 User 定义并且它有效.为什么使用 django 身份验证框架中的 User 类会给我标题中提到的 ..
发布时间:2022-01-04 10:53:39 其他开发

Graphene-django 与 ManyToMany &直通表

我的应用有多个多对多关系与直通模型,如下所示: class Person(models.Model):名称 = 模型.CharField()类组(模型.模型):名称 = 模型.CharField()成员 = models.ManyToManyField(Person, through='Membership')类成员资格(模型.模型):人 = 模型.ForeignKey(人)group = mo ..
发布时间:2022-01-04 10:50:34 其他开发

Graphene Django“必须提供查询字符串"

我已经使用 Django 设置了一个石墨烯服务器.当我通过 GraphiQL(Web 客户端)运行查询时,一切正常.但是,当我从其他任何地方运行时,出现错误:“必须提供查询字符串." 我做了一些故障排除.GraphiQL 使用 Content-Type: application/json 将 POST 数据发送到 GraphQL 服务器.这是我从 Chrome 网络选项卡中为 GraphiQ ..
发布时间:2022-01-04 10:28:43 其他开发

石墨烯-Django文件命名约定

我正在将以前的Django REST API项目重建为GraphQL项目.我现在有疑问&突变工作正常. 我的大部分学习都来自于研究现有的Graphene-Django&石墨烯-Python代码示例.它们之间似乎有很多不一致之处. 有人建议将GraphQL查询放置在 schema.py 中,而将突变放置在 mutation.py 中. 我认为更有意义的是让这两个文件保存各自的代码: ..
发布时间:2021-05-13 19:25:12 Python

GraphQL和石墨烯

我有一个具有一对多关系的数据库架构.例如一个部门有很多客户.是否有可能创建一个客户和一个部门并将其关联的变异?还是正确的方法是先创建一个客户,然后再创建一个部门,然后彼此关联? 在第二种方法中,我需要三趟而不是一趟.有人可以给我提供GraphQL来处理这种情况吗? 解决方案 您可以定义您的变异输入以支持嵌套类型.这样一来,您就可以在单个突变中同时发送部门和 Customer . ..
发布时间:2021-05-13 19:23:39 其他开发

在GraphQL中使用许多用例创建突变

我是GraphQL的新手,在GraphQL中创建突变(尤其是 graphene-python )时需要一些建议(最佳实践).假设我们有一些 Task 和一个 User .现在,我想创建 Task 变异,它涵盖三种情况: 创建任务. 创建 Task 并将现有的 User 分配给此 Task . 创建 Task 并将新创建的 User 分配给此 Task . 那么,将其作为单个Qrap ..
发布时间:2021-05-13 19:22:35 其他开发

Django中的GraphQL查询未返回

我正在尝试在Django中使用graphQL查询.基本上,我有两个应用程序,一个是"api"应用程序,其中包含执行查询所需的一切,另一个是"frontend",我从中调用该API来使用这些查询. 我可以使用GraphQL视图在其中键入查询,并且可以完美地工作,但是每当我尝试进行查询时,我都会得到:"OrderedDict([[''users',None)])" 在GraphQl视图中查询的 ..
发布时间:2021-05-13 19:21:16 Python

在Python中构造GraphQL查询字符串的最佳方法

我正在尝试执行此操作(请参见标题),但这有点复杂,因为我要构建的字符串必须具有以下属性: mulitiline 包含大括号 我想向其中注入物品 使用普通的''''''多行字符串会使注入变量变得困难.使用多个f字符串使注入变量变得容易,但是每个花括号都很多,都必须加倍.并且必须在每行之前添加 f .另一方面,如果我尝试使用 format ,则所有花括号也会使它感到困惑. 有没有 ..
发布时间:2021-05-13 19:20:32 Python

在GraphQL中检索对象ID

我想知道是否有可能获得对象的“原始ID"作为查询结果.每当我向服务器发出请求时,它都会返回节点“全局标识符",类似于 U29saWNpdGFjYW9UeXBlOjEzNTkxOA == . 查询与此类似: {allPatients(active:true){边缘{光标节点{ID状态名称}}} ,返回值为: {“数据": {“边缘":[{“光标":"YXJyYXljb25uZWN0 ..
发布时间:2021-05-13 19:19:12 Python

石墨烯-django与ManyToMany&直通表

我的应用具有以下几种通过模型的多对多关系: class Person(models.Model):名称= models.CharField()组Group(models.Model):名称= models.CharField()成员=模型.ManyToManyField(人员,通过=“成员身份")类Membership(models.Model):人=模型.ForeignKey(人)组=模型. ..
发布时间:2021-05-13 19:17:55 其他开发

在运行时石墨烯上创建动态模式

我几乎花了3天的时间来找到一种在python石墨烯中创建动态模式的方法.我唯一可以找到的相关结果是以下链接: https://github.com/graphql-python/graphene/blob/master/graphene/types/dynamic.py 但是我找不到任何文档. 整个想法是创建一个动态模式.我想提供一个GraphQL兼容的API,即使代码中未定义模型,用户也可 ..
发布时间:2021-05-13 19:17:34 Python

将JSON模型字段与Django石墨烯一起使用

我正在为我的项目使用graphql端点.其中一种模型具有包含一些json的文本字段.如果我通过graphql请求我的实体列表,我会像字符串一样获取此json.如何达到在graphql中使用它作为嵌套结构并具有过滤,选择某些属性等功能的能力. class SysObjects(models.Model):id = models.BigAutoField(primary_key = True)us ..
发布时间:2021-05-02 18:35:51 其他开发