提问人:LeMecWeird 提问时间:10/3/2023 更新时间:10/9/2023 访问量:190
播种机无法使用 Bun 与 Prisma 一起使用
Seeders not working with Prisma using Bun
问:
所以基本上我第一次尝试使用 Elysia 框架和 ORM 的棱镜。
这是我的schema.prisma
generator client {
provider = "prisma-client-js"
}
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}
model User {
id String @id @default(auto()) @map("_id") @db.ObjectId
email String @unique
name String?
}
这是我seed.ts
import { PrismaClient } from "@prisma/client"
const prisma = new PrismaClient()
async function main()
{
await prisma.user.create({
data:
{
name: "John Dough",
email: `john-${Math.random()}@example.com`
},
})
const count = await prisma.user.count()
console.log(`There are ${count} users in the database.`)
}
main()
.then(async () => {
console.log("done ! GG !")
await prisma.$disconnect()
})
.catch(async (error) => {
console.error(error)
await prisma.$disconnect()
process.exit(1)
})
这是我package.json
{
"name": "elysia",
"version": "1.0.50",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"dev": "bun run --watch src/index.ts",
"seed": "bunx prisma db seed"
},
"dependencies": {
"@elysiajs/swagger": "^0.7.3",
"@prisma/client": "^5.3.1",
"bson": "^6.1.0",
"elysia": "latest",
"prisma": "^5.3.1"
},
"devDependencies": {
"bun-types": "latest"
},
"module": "src/index.ts",
"prisma": {
"seed": "bun utils/seed.ts"
}
}
所以,问题是命令“bunx prisma db push”工作得很好,它读取我的schema.prisma ,创建相关的集合并“生成”我的 prisma 客户端。
但问题是,基本上做“bunx prisma db seed”的“bun seed”命令基本上也做“bun utils/seed.ts”(我也尝试手动做)显示了这一点:
$ bunx prisma db seed
Environment variables loaded from .env
Running seed command `bun utils/seed.ts` ...
🌱 The seed command has been executed.
但是在我的数据库中没有任何种子,奇怪的是,主数据库的 .then 中的控制台 .log 似乎没有被应用。
答:
评论