播种机无法使用 Bun 与 Prisma 一起使用

Seeders not working with Prisma using Bun

提问人:LeMecWeird 提问时间:10/3/2023 更新时间:10/9/2023 访问量:190

问:

所以基本上我第一次尝试使用 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 似乎没有被应用。

打字稿 Prisma 种子 Elysiajs

评论


答:

0赞 LeMecWeird 10/9/2023 #1

好吧,所以这似乎是包子方面的错误!这是窥视的解决方法声明: github 评论

不是在棱镜的尽头,希望它能很快解决!