首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >prisma findUnique,其中只有一个唯一的参数

prisma findUnique,其中只有一个唯一的参数
EN

Stack Overflow用户
提问于 2021-02-02 03:06:02
回答 1查看 2.5K关注 0票数 1

我遇到了一个问题,我需要通过用户名和电子邮件检查用户是否存在,因为这两个都是数据库中唯一的字段,但我得到了一个错误。

Argument where of type UserWhereUniqueInput needs exactly one argument, but you provided username and email. Please choose one.

那么,有没有办法只执行这个查询一次呢?而不是像下面这样分别为每个人运行一个

代码语言:javascript
运行
复制
const user = await prisma.user.findUnique({
        where: {
          username,
          email,
        },
      });

而不是像这样

代码语言:javascript
运行
复制
const user = await prisma.user.findUnique({
        where: {
          username,
        },
      });

const user = await prisma.user.findUnique({
        where: {
          email,
        },
      });
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-25 11:06:47

我不完全确定,但prisma返回一个JS对象...因此,这样的查询可能会起作用:

代码语言:javascript
运行
复制
const query = await prisma.user.findUnique({
        where: {
          user: user.username
        },
       select: {
         user: true,
         email: true
      }
      });

我相信这应该是可行的,但它仍然只找到一个唯一的。我不确定为什么你会选择用户+电子邮件作为两个唯一的,因为我会假设一个是与另一个捆绑在一起的。

如果我的解决方案不起作用,我会在这里寻找进一步的答案:

https://www.prisma.io/docs/concepts/components/prisma-client/crud#findfirst

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65998680

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档