问题标签 [prisma-graphql]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
314 浏览

graphql - Prisma graphql 关系上的计算域

我有以下数据模型:

我有使用 addFragmentToInfo 的自定义 Tvshow 解析器:

解析器-queries.js

tvshow-resolver.js

这是一个例子,我有更多的 Tvshow 计算字段

我可以使用 countSubscribers 查询 Tvshows,这样可以正常工作:

但我想做的是从返回 countSubscribers 的用户那里获取所有最喜欢的电视节目,对此的查询可能是这样的:

问题是当我查询这个时,在我之前提到的 tvshow-resolver.js 中,父级没有任何订阅者对象

0 投票
1 回答
502 浏览

prisma - 为 prisma 数据模型中的数组字段定义是否需要

以下有什么区别。什么时候使用一个而不是另一个?

0 投票
2 回答
1074 浏览

graphql - OneToMany 关系在 Prisma 数据库上工作,但不在服务器上

在创建帖子的突变中,我正在使用以下代码:

这会将帖子连接到数据库中的作者。我通过使用 Database Playground 了解了这一点。

但是,当我 console.log postToUpdate 时,它​​返回`author:null!当我在客户端使用 gql 时,也会发生同样的事情。帖子没有作者!

尽管作者已保存在数据库中,但我在客户端和服务器端都看不到他/她。

作为参考,这是数据模型

这是整个架构:

0 投票
3 回答
1762 浏览

node.js - 棱镜错误:无法连接到 http://localhost:4466 的服务器

我在部署 prisma 时遇到问题。

我采取的步骤如下:

  1. 新建一个文件夹
  2. prisma init
  3. 选择 postgresql 并填写所需信息。
  4. 完成安装

现在,当我开始使用docker-compose up -d它时,它会创建容器并运行它,但是当我去部署 prisma 时,prisma deploy出现以下错误:

Could not connect to server at http://localhost:4466.Please check if your server is running.

是否有任何建议或文档可以告诉我为什么会发生这种情况以及如何正确运行它?

0 投票
0 回答
301 浏览

node.js - 订阅不稳定。Prisma 以 GqlConnectionTerminate 错误终止

我刚刚在我的 API 中实现了使用 graphql-yoga 的订阅。我有一台具有以下配置的 prisma 服务器:

请注意,我限制了连接数,因为我正在连接到允许连接数有限的 Google Cloud SQL 实例。现在我有 4 个瑜伽应用程序连接到这台 prisma 服务器。问题是,有时订阅有效,有时会引发以下错误(在操场上):

当我检查 prisma 容器日志时,我发现:

我的 API 在 Nginx 代理后面:

我无法弄清楚问题出在哪里。任何线索或指导将不胜感激。提前致谢。

0 投票
2 回答
10379 浏览

node.js - 如何在没有 ID 的情况下在 Prisma 中插入新记录?

我正在使用 Prisma ( https://www.prisma.io ) 作为 ORM。我想在存储数据时检查重复项,如果不存在,则创建一条新记录。

我想我可以用 Prisma 提供的 upsert 方法来做到这一点,并且在生成的客户端中可用,但是该方法的 where 子句仅适用于 id (或@unique 字段),但如果记录不存在,则不存在要提供的任何 ID。

我提供了一个问题的例子。

数据模型.prisma

种子.js

创建后,有一个包含三个没有性能的系统的数据库。如果没有任何具有相同日期和相同系统的系统,我正在尝试插入一个新的 SystemPerformance。我努力了

但抛出异常:

UnhandledPromiseRejectionWarning:错误:变量“$where”类型为“SystemPerformanceWhereUniqueInput!”的预期值!但得到:{“系统”:{“名称”:'s1'},“日期”:“2019-03-12T00:01:06.000Z”}。原因:“system”字段“system”未在输入类型“SystemPerformanceWhereUniqueInput”中定义

我找到的唯一解决方案是检查存在,然后更新或创建,但我想用 upsert 来做。

有没有办法用 upsert 做到这一点?

0 投票
1 回答
1455 浏览

javascript - Prisma Connection WhereInput 用于枚举值数组?

这样做

给我postsConnection发布的帖子。

该模型在 field 中有一个枚举Post数组。这是帖子Categorycategoriesdatamodel

我的问题是,我需要编写什么 Prisma 查询才能获取PostConnection特定类别的帖子?

0 投票
2 回答
680 浏览

javascript - 如何使用 GraphQL Yoga 进行多个嵌套查询(GET 请求)?

如何使用 GraphQL Yoga 进行多个嵌套查询?

这是我的数据

场景是我想查询特定用户的所有评论,但用户只存储commentid。

这是我的代码

所需查询

但它返回未找到,因为axios命中的端点是http://localhost:3000/comment/1,2,3'

我怎样才能让它返回所有用户的评论?多谢你们!

0 投票
1 回答
870 浏览

ecmascript-6 - TypeError:无法读取未定义的属性“createProduct”?(来自 graphql mutation.js 文件)

当我为面向公众的 API (localhost) 编写相同的查询时,我收到错误:

由于我是 graphql 的新手,使用 graphql 和 Prisma 数据库,当我为 demo-prisma 服务器编写查询和变异时,我能够查询和变异对象,但不能在我的应用程序面向公众的 api 的 localhost 端点上!

下面是我的突变文件,它显示错误:

这也是我的 schema.graphql 文件

我认为我使用的语法有问题。还有什么是ES6格式来写变异函数!

0 投票
1 回答
1684 浏览

node.js - 有没有办法使用嵌套创建批量更新 prisma 中的对象

假设我们有以下棱镜定义

现在,鉴于我们有一个集合ScheduledCharge,有没有办法可以ScheduledCharge通过嵌套对象创建批量更新,理想情况下是这样的

但是上面提到的不是由 prisma 客户端生成的,但是我可以循环通过预定的收费并执行以下操作

如果我执行上述操作,是否有人知道我是否可以将 MySQL 事务与 prisma 客户端一起使用并在任何更新失败时进行回滚?