내 프로젝트의 마지막 부분에서 Prisma 데이터베이스를 올바르게 배포할 수 없는 것 같습니다. 사이트가 성공적으로 구축되어 사이트를 볼 수 있지만 데이터베이스에 액세스하려고 하면 다음과 같은 메시지가 표시됩니다.
无效的 prisma.product.findUnique() 调用:表 main.Product 在当前数据库中不存在。
마이그레이션을 위한 스키마가 있습니다.
으아악render.com의 빌드 프로세스 중에 다음을 지정합니다.
11월 3일 오후 2시 40분 16초 "@prisma/client"에서 { PrismaClient } 가져오기 11월 3일 오후 2시 40분 16초 const prisma = new PrismaClient() 11월 3일 오후 2시 40분 16초
11월 3일 오후 2시 40분 19초 server/database/schema.prisma에서 Prisma 스키마 로드 11월 3일 오후 2시 40분 19초 데이터 소스 "db": "file:./dev.db"에 위치한 SQLite 데이터베이스 "dev.db" 11월 3일 오후 2시 40분 19초
11월 3일 오후 02:40:19 프리즈마/마이그레이션에서 마이그레이션을 찾을 수 없습니다. 11월 3일 오후 2시 40분 19초
11월 3일 오후 2시 40분 19초
11월 3일 오후 02:40:19 보류 중인 이체가 없습니다.
빌드 명령을 설정했습니다:
npm 安装; prisma 生成 --schema=./server/database/schema.prisma; prisma 迁移部署 --schema=./server/database/schema.prisma; npm run build;
당시 최신 커밋에는 마이그레이션 디렉터리가 없었습니다
프로젝트가 빌드되면 마이그레이션을 위해 구성한 내용이 포함되나요? "--schema=..."는 빌드할 때 올바른 디렉토리를 가리키나요?
내가 시도한 것: 전반적으로 제가 지식이 부족해서 시도해 본 그 어떤 것보다 문제가 더 많습니다.
이 프로젝트의 nuxt 빌드 파일을 보면 빌드하지 않았을 때와 완전히 다른 파일 구조가 생성되는데, SQL 데이터베이스를 dev.db로 확장할 때 오류를 가리키는 것이 아닐까요?
그리고 SQL lite는 프로덕션에 적합하지 않나요? 그렇다면 어떤 대안이 더 좋으며 배포 서버에 이 데이터베이스를 설치하는 방법은 무엇입니까?
으아악이 줄은 연결할 데이터베이스를 찾았다는 것을 의미합니까? 전반적으로 제품 테이블이 내 스키마에 제공되었음에도 불구하고 왜 찾을 수 없는지 혼란스럽습니다.
전체적인 질문은 쿼리할 때 빌드된 nuxt 애플리케이션이 테이블을 볼 수 없는 원인은 무엇입니까?
OP는 스키마에 연결하기 전에 마이그레이션을 실행하여 문제를 해결했습니다.