问题标签 [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 回答
493 浏览

node.js - Prisma.js - 如何插入具有多对多关系的表中

如何使用 Prisma.js 为帖子分配一些标签?

我已经有一些标签,我想为帖子分配一些标签?我不想创建新标签。

架构.棱镜:

在 Prisma 网站中,有一个示例,但它适用于创建一些标签并将它们分配给 Post。虽然我想在文章中添加一些现有的标签。

https://www.prisma.io/docs/support/help-articles/working-with-many-to-many-relations#explicit-relations

0 投票
1 回答
2219 浏览

node.js - 使用 Prisma 2 从查询中排除用户密码

最近我开始做一个新项目来学习一些新技术(Prisma 2、REST api with Express 等)。寿,我遇到了一个问题。

我的应用程序有一个用户身份验证系统,用户模型有一个密码列。因此,当客户端请求用户时,后端会从数据库中选择所有列,包括密码(顺便说一下散列)。

我试图不选择 prisma findMany 上的密码列,如下所示:

但是我得到了一个错误,棱镜说选择应该包含至少一个真正的价值。因此,我添加id: true到选择中。我提出了一个 api 请求,我看到只有 id 为用户返回。

据我了解,prisma 希望我将我关心的所有列添加到选择对象中。但是,我需要来自用户的很多列,并且我正在做很多查询来获取用户,我不能每次都写我需要的所有字段。

所以,我想问你是否有合法的方法来做到这一点。

PS:我不采取“改用 rawQuery”作为解决方案。

0 投票
1 回答
506 浏览

node.js - Prisma upsertmany 问题提供列表, 预期 SimilarCreateWithoutMovieInput

使用"@prisma/client": "^2.25.0"

代码

这里是schema.prisma

Similar应该是嵌套在特定对象[]中的其他数组,不能是本身MoviesMovie

我没有在生成类型上使用 prisma upsert 的经验,并且出现上述错误。我希望更新 aMovie并同时更新SimilarMovie.

我尝试过使用connectOrCreate,但它不支持创建多个记录,similar同时movie按预期创建一个记录
我该如何实现?

资源
https://www.prisma.io/docs/concepts/components/prisma-client/relation-queries#nested-writes
https://www.prisma.io/docs/concepts/components/prisma-client/relation-查询#connect-or-create-a-record

0 投票
1 回答
159 浏览

node.js - 使用 Prisma.js 按标签 ID 获取帖子

如何通过过滤获得帖子tagId

我测试了这段代码,但它不起作用:我得到了所有没有过滤的帖子!

架构.棱镜:

我该如何解决这个问题?

0 投票
0 回答
37 浏览

graphql - 你能帮我弄清楚如何在 Prisma 和 Nexus 中连接两个多对多模型(帖子和标签)吗?

我想创建一个附有标签列表的帖子。模型是多对多连接的(一个帖子可以有多个标签,一个标签可以有多个帖子)。

这是我的棱镜模型:

这是一个突变,我正在尝试创建一个帖子,并为其附加标签:

这似乎不起作用。

我收到一个错误:

好像tags帖子上的字段不见了?但我确实跑了prisma generateprisma migrate还有什么可能导致这个问题?

我的第二个问题是 - 我如何用新的标签替换已经连接的标签?例如,在updatePost突变中,一些标签可能在更新之前就已经存在,但是用户想从帖子中删除它们。如何用新列表正确替换所有标签?如果我应该首先disconnect所有旧标签然后connect是新标签 - 有没有办法在同一个突变中完成所有这些?

0 投票
2 回答
1444 浏览

graphql - Prisma2 错误:无效的 `prisma.post.create()` 调用:类型 PostUncheckedCreateInput 的 data.tags 中的未知 arg `tags`

我想创建一个附有标签列表的帖子。模型是多对多连接的(一个帖子可以有多个标签,一个标签可以有多个帖子)。

这是我的棱镜模型:

这是一个突变,我正在尝试创建一个帖子,并为其附加标签:

这似乎不起作用。

我收到一个错误:

好像tags帖子上的字段不见了?但我确实跑prisma generateprisma migrate。如果我使用 Prisma Studio 手动添加标签,我也可以成功查询帖子上的标签。什么可能导致此问题?

0 投票
0 回答
127 浏览

prisma - 如何在 Prisma 中按自定义值对项目进行排序?(尝试在 Hacker News 或 Reddit 上实现“按热排序”)

我正在尝试实现类似于 HackerNews/Reddit 所做的“按热排序”,如此处所述

我想像这样计算帖子的排名:

Post模型有一个score值 - 帖子收到了多少赞成票,以及createdAt- 它的创建时间。越高rankScore,我希望帖子越接近列表顶部。所以我想取scorecreatedAt值,用它们来计算rankScore,然后这样做orderBy

在 Prisma 中实现这一点的正确方法是什么?

现在我只是返回最受好评的帖子列表,如下所示:

因此,很容易按模型上已经存在的字段对帖子进行排名,但我需要在页面加载时实时计算它,因为rankScore取决于帖子的年龄,将这样的内容存储在D b。

这是我正在编写的实际解析器代码(请参阅posts查询)。

0 投票
1 回答
422 浏览

prisma - 在 Prisma 2 中更改 Prisma 文件夹的名称和位置

我想更改 prisma 文件夹的名称和位置。目前它称为 prisma,它位于我的 nextjs 项目的根文件夹中。我想将其命名为 db 并将其放在 src 文件夹中。那可能吗?如果是这样,怎么做?

0 投票
1 回答
532 浏览

prisma - Prisma 2: Setting Minimum & Maximum Length of a String type

I am creating a model using Prisma 2 and want to set a minimum and maximum length for one of the fields. I.e., something like this:

I just made up the above syntax. I am wondering if something like that exists in Prisma and, if so, how to do it.

Any ideas?

Thanks.

0 投票
1 回答
1004 浏览

node.js - 在 Prisma 中查询时,如何在嵌套关系中使用带有多个查询参数的“AND”运算符?

这是我第一次尝试 prisma 并且被卡住了。所以我有“产品”和“过滤器”模型。

我希望以下查询起作用。这个想法是,我想获取具有动态匹配查询参数(名称和值)的产品。产品查询参数动态来自前端。

如果只有一个参数,比如

查询返回适当的产品,但如果有多个查询参数(如上面的原始代码),则返回空数组。

我的产品架构看起来像这样,简化后,

我的过滤器架构看起来像这样,简化了

非常感谢