NestJS使用Prisma的_count关联计数报clinicSelect类型错误如何解决
问题原因
你遇到的类型报错是因为Prisma 2.20.0 ~ 2.30.x 版本的关联计数功能属于预览特性,默认未开启,所以自动生成的Prisma Client类型里没有_count相关的定义,和你的代码写法、Prisma Client本身功能无关。
解决步骤
- 首先修改你的
schema.prisma文件中Prisma Client生成器的配置,手动开启关联计数的预览特性:
generator client { provider = "prisma-client-js" // 新增这一行开启关联计数预览特性 previewFeatures = ["selectRelationCount"] }
- 重新执行Prisma Client生成命令,更新类型定义:
npx prisma generate
- 重启你的IDE(如VS Code)的TypeScript语言服务,消除缓存的类型报错。
如果执行完上述操作还是报错,可以删除node_modules/.prisma目录后重新执行prisma generate,避免旧的生成缓存影响。操作完成后你原来的查询代码就可以正常运行,clinicSelect类型中也会自动生成_count相关的类型定义,不会再抛出类型不匹配的错误。
如果你后续升级到Prisma 3.0及以上版本,关联计数功能就已进入稳定版,不需要再额外配置previewFeatures参数。
内容的提问来源于stack exchange,提问作者Zichzheng
相关产品推荐
相关产品推荐

