问题标签 [prisma2]

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 投票
2 回答
3383 浏览

prisma - prisma2 migrate 错误:数据库中的迁移比本地多

我正在使用 prisma2 + typescript + nexus + graphql-yoga 构建后端应用程序。我现在已经定义了我的模式,同时尝试通过运行命令保存迁移:

收到以下错误。

错误:数据库中的迁移多于本地迁移。这决不能发生。本地迁移 ID:。远程迁移ID:20200312230215-init、20200312232858-init2

0 投票
1 回答
86 浏览

prisma-graphql - 为什么 nexus dev 命令运行应用程序两次,以及如何修复它?

我使用 nexus graphql 框架创建了超级简单的应用程序。

第一步是这样的:

https://www.nexusjs.org/#/tutorial/chapter-1-setup-and-first-query

api/app.ts输入了代码:

唯一的依赖是uid生成唯一键。

当我使用 ts-node 运行它时,我可以看到:

在此处输入图像描述

所以我们可以看到:

  1. 一旦队列开始。
  2. 有一个队列。
  3. 它可以正常工作。

但是当我nexus通过命令运行这段代码时,nexus dev我看到了:

在此处输入图像描述

所以:

  1. 两个队列开始了。
  2. 它们同时运行。
  3. 他们有独立创建的变量i

问题:

  • 有人遇到这个问题吗?
  • 我应该如何更改我的代码以获得像 in 中的单个队列ts-node
  • 或者也许它是错误的nexus

更新:

我检查了版本是否存在此问题> =0.21.1-next.2

0.21.1-next.1应用程序中运行一次。

重现步骤:

有提交引入了这种行为:

https://github.com/graphql-nexus/nexus/commit/ce1d45359e33af81169b7ebdc7bee6718fe313a8

有类似但没有参考文档的onMainThread变量REFLECTION_ENV_VAR。我无法理解这段代码在做什么?

这可能会在未来记录在这个地方:

https://www.nexusjs.org/#/architecture?id=build-flow

但现在有:

在此处输入图像描述

更新 2

我找到了解决方法:

但这只是暂时的破解而不是解决方案。完整示例:

https://github.com/graphql-nexus/nexus/discussions/983

0 投票
1 回答
2353 浏览

prisma - 如何在 Prisma 2.0 中保存 Json?

我有JSON输入MySQL数据库。

这是有效的 JSON。

MySQL我可以执行:

但在Prisma 2.0

我有这样的错误:

在这个例子中:

https://github.com/prisma/prisma/issues/2682

0 投票
1 回答
715 浏览

graphql - 带有棱镜 2 的阿波罗服务器

我正在尝试创建 Apollo 服务器 + Lambda + primsa2

但是我从 prisma2 模式中得到的就像

数据库正在使用 mysql

我的问题是如何从系统自动创建基本 typeDefs?我应该手动创建 typeDef 吗?

0 投票
1 回答
161 浏览

prisma - 是否可以在 Prisma2 中的客户端实例化时覆盖连接 url?

我知道 Prisma2 默认情况下希望您将 DB 连接 URL 烘焙到通过 Schema 引用的环境变量中。我知道这是 CLI 操作(如迁移到工作)所必需的。

但是,在应用程序引导时,当代码在服务器内运行时,我更喜欢使用 AWS Secrets Manager 之类的东西来处理我的所有应用程序机密,而不是环境变量。

我想知道 Prisma 2 是否为我提供了一种在运行时用我在运行时定义的东西覆盖连接 URL 的方法?

我曾尝试通过datasources客户端选项的属性来执行此操作,如下所示:

然而,它仍然使用在客户端生成时定义的值。

0 投票
2 回答
2936 浏览

node.js - 使用 Prisma2 和 Jest 删除表中的所有项目

我想知道如何使用 Prisma2 和 Jest 删除表中的所有项目?

我阅读了CRUD 文档并尝试使用:

user.test.js

但我有一个错误:

我的数据库

模式棱镜

0 投票
1 回答
218 浏览

node.js - Prisma2:如何设计与数组类型模型相关的模式?

我在设计架构时遇到了一些问题。

情况1:

一个包可以被数百名用户订阅。所以,我认为这是要走的路。但是,问题是,当一个包需要被删除时,用户(管理员)也需要被删除。我们不想要的

案例2:

通过这种方式设计,当包被删除时,用户并没有被删除。但我无法将多个用户连接到一个包。

0 投票
1 回答
2395 浏览

prisma - Prisma 2:未知 arg `where` 在 select.count.where 类型未定义

我无法将 where 子句应用于模型上的简单 count() 查询。如果我删除 where 子句,它就可以正常工作并返回该表中的行数。

好的: let result = await prisma.articles.count()

坏的: let result = await prisma.articles.count({ where: { article_id: 1 } })

错误:

我使用架构中的哪一列都没有关系,同样的错误。我该如何解决这个问题?

0 投票
1 回答
533 浏览

postgresql - Prisma 1 到 2 迁移问题:P4001 自省数据库为空

所以,我一直在尝试在我现有的数据库上运行自省过程,如下所示:

并收到以下错误跟踪:

然后我尝试在操场上运行一个查询,该查询发出以下跟踪错误:

因此,默认情况下该过程正在尝试访问公共架构 ( message: "relation /"public.Item/" does not exist"),我没有在其中指定表/数据信息。我所有的表/数据信息都驻留在my-schema$prod. 我最初假设我需要更改数据库的 search_path 以包含 my-schema: "$user", "my-schema$prod", public,但这没有解决任何问题。

理想情况下,我需要能够将数据源中的模式指定为:

我该如何解决这个问题?

0 投票
1 回答
283 浏览

javascript - 如何使用 Prisma 2 实现社交媒体“关注提要”查询?

我有一个与编写“社交媒体”样式提要查询有关的问题,但在这种情况下,我使用的是 Prisma 2。我有一个音乐应用程序,我想在其中显示所有Albums来自Artists以下内容的提要User

在我的schema.prisma中,我有以下模型:

用户

艺术家

Prisma 创建一个隐式连接表,调用该表UserToArtist来跟踪 aUser跟随Artist

专辑

Prisma 创建一个隐式连接表,称为ArtistToAlbum跟踪Artists与某些关联的Albums.


那么如何创建一个 Prisma 查询来查找用户按照Album日期排序的所有艺术家专辑呢?这是我的第一次尝试,但这似乎不正确,专辑未按日期排序:

请注意我必须如何通过两个some语句进行过滤?只是感觉不对……对于这样的查询,您有什么建议?谢谢!