- 这是我第一次使用Prisma,我的提供程序是
mongodb
,当我想要创建模型时,它向我抛出了一个错误**
- 这是我第一次使用Prisma,我的提供程序是
Invalid `prisma.user.create()` invocation:
Prisma needs to perform transactions, which requires your MongoDB server to be run
as a replica set. https://pris.ly/d/mongodb-replica-set
- 我在nextjs应用程序中使用Prisma,并将代码放在API页面中**
我的数据库URL是mongodb://localhost:27017/threadzees
代码:
await prisma.user.create({
data: {
username,
email,
avatar: "1",
createdAt: new Date(),
},
});
- 如何解决此问题?**
2条答案
按热度按时间g52tjvyc1#
我正在运行Mongodb 4+版本,我解决了这个问题,如下所示根据错误描述,您需要创建一个副本。您可以使用基于云的Mongo,也可以在本地创建一个副本,如下所示。
1.--dbpath:是您的数据路径目录(上面的命令指向当前目录)
1.--replSet=rs0:复制副本名称
1.阅读更多@https://www.mongodb.com/docs/manual/tutorial/deploy-replica-set/
快乐编码:)
5anewei62#
您可以使用“棱镜”:“2.26.0”和“@棱镜/客户端”:“2.26.0”而不是您当前的版本。它们不需要副本集。另外,您必须使用@default(dbgenerated())而不是@default(auto()),两者都与“npx prisma@2.26.0 generate”一起用于此旧版本。