You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Prisma数据库种子导入外部模拟数据时出现模块找不到错误

Prisma数据库种子导入外部模拟数据时出现模块找不到错误

看起来你遇到的问题是ts-node在执行Prisma种子文件时,没法识别你配置的@/路径别名,导致找不到mock-users模块。我来给你几个可行的解决办法:

  • 改用相对路径(最直接的方案)
    把带别名的导入改成相对路径,比如如果你的seed.ts在prisma文件夹下,而mock-users.ts在项目根目录的utils/server里,那么导入语句可以改成:

    import mockUsers from '../utils/server/mock-users'
    

    这样ts-node不用处理路径别名,直接就能定位到文件,快速解决问题。

  • 配置ts-node识别路径别名
    如果你想保留@/别名,可以按以下步骤操作:

    1. 确保你的tsconfig.json里已经正确配置了路径映射,比如:
      {
        "compilerOptions": {
          "baseUrl": ".", // 指向项目根目录
          "paths": {
            "@/*": ["src/*"] // 假设你的utils文件夹在src目录下,根据实际情况调整
          }
        }
      }
      
    2. 安装tsconfig-paths依赖,用来让ts-node识别路径别名:
      npm install tsconfig-paths --save-dev
      
    3. 修改Prisma的seed命令,在ts-node后面加上-r tsconfig-paths/register,让它加载路径配置。比如在package.json里:
      "prisma": {
        "seed": "ts-node -r tsconfig-paths/register --compiler-options {\"module\":\"CommonJS\"} prisma/seed.ts"
      }
      

    之后再执行npx prisma db seed应该就能正常识别别名了。

  • 排查路径配置是否正确
    可以先手动用ts-node运行种子文件,看看报错信息有没有变化:

    ts-node prisma/seed.ts
    

    同时检查tsconfig.json里的baseUrl和paths是否和你的项目文件结构匹配,比如@/*是不是真的对应到了你存放mock数据的目录。

备注:内容来源于stack exchange,提问作者Zohaib Amir

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 08:09:54