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

Next 13 + Prisma 数据库seed.ts失效及类型错误排查

问题排查与解决方案

1. API 404 错误原因及修复

Next 13 中 API 路由的结构取决于你使用的是 App Router 还是 Pages Router:

  • 若用 App Router:API 文件必须放在 app/api/seed/route.ts,且需导出对应 HTTP 方法的函数(比如 GET),示例:
    export async function GET() {
      // 你的 seed 逻辑
      return new Response('Seed completed', { status: 200 });
    }
    
  • 若用 Pages Router:API 文件需放在 pages/api/seed.ts,而非根目录下的 api 文件夹。
    你当前的文件路径不符合 Next 13 的 API 路由规则,导致访问时返回 404。

2. TypeScript 类型错误修复

提示 main_image 不符合 RestaurantCreateManyInput 类型,说明你的 Prisma Schema 中定义的字段是 main_img,但课程提供的 seed.ts 里用了 main_image。解决方式:

  • 直接修改 seed.ts 中的字段名,把所有 main_image 替换为 main_img;
  • 若你想保留 main_image 字段名,需修改 Prisma Schema 中的对应字段,然后执行 npx prisma generate 更新 Prisma 客户端,再同步数据库(npx prisma db push 或 npx prisma migrate dev)。

3. 种子数据未生成的连锁问题

404 导致 API 逻辑根本没执行,加上类型错误会让代码编译/运行失败,所以先解决前两个问题:调整 API 文件路径、修正字段名,再访问正确的 API 地址触发种子数据填充。

内容的提问来源于stack exchange,提问作者Ethan

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 05:17:04