-
카테고리
-
세부 분야
백엔드
-
해결 여부
미해결
모든 Route 기본 Private로 만들고 IsPublic Annotation 작업하기 강의부분 질문드립니다
24.03.06 19:52 작성 24.03.08 07:06 수정 조회수 145
1
안녕하세요 너무 잘듣고있습니다
'모든 Route 기본 Private로 만들고 IsPublic Annotation 작업하기' 수업듣는 중 질문이있어 글남깁니다.
POSTMAN에서 DELETE기능을 눌렀을때 에러가 발생합니다
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
[터미널에 나온 에러 내용]
[REQ] GET /posts?order__createdAt=DESC&take=5 2024. 3. 6. 오후 7:44:07
[REQ] DELETE /posts/122 2024. 3. 6. 오후 7:44:32
[Nest] 9576 - 2024. 03. 06. 오후 7:44:32 ERROR [ExceptionsHandler] update or delete on table "posts_model" violates foreign key constraint "FK_40cd89c6655ec7b102842feacab" on table "image_model"
QueryFailedError: update or delete on table "posts_model" violates foreign key constraint "FK_40cd89c6655ec7b102842feacab" on table "image_model"
at PostgresQueryRunner.query (C:\Users\manjin han\OneDrive\바탕 화면\flutter 폴더 및 파일\cf_sns\src\driver\postgres\PostgresQueryRunner.ts:331:19)
at processTicksAndRejections (node:internal/process/task_queues:95:5)
at DeleteQueryBuilder.execute (C:\Users\manjin han\OneDrive\바탕 화면\flutter 폴더 및 파일\cf_sns\src\query-builder\DeleteQueryBuilder.ts:77:33)
at PostsService.deletePost (C:\Users\manjin han\OneDrive\바탕 화면\flutter 폴더 및 파일\cf_sns\src\posts\posts.service.ts:332:7)
[postman 에러 내용]
{
"statusCode": 500,
"message": "Internal server error"
}
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
강의상
terminal창에, 이렇게 화면이 나와야하는데
해당화면처럼 에러가 나오네요
몇일 고민해도 안되서 질문 드립니다
[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - Part 1 NestJS Core
모든 Route 기본 Private로 만들고 IsPublic Annotation 작업하기
강의실 바로가기
답변을 작성해보세요.
1
코드팩토리
지식공유자2024.03.08
안녕하세요!
ImageModel 연동이 존재하는 Post를 삭제하려고 하신게 맞을까요?
Foreign Key를 다른곳에서 레퍼런스 하고 있을경우 삭제하려고 할때 에러를 던지는게 기본값입니다.
이럴경우 두가지 방법이 있습니다. 해당 레퍼런스 데이터를 먼저 삭제하고 (이경우 ImageModel) 원래 지우려던 데이터를 삭제합니다.
또는 Relation 옵션에 cascade: true를 입력 할 수 있습니다.
그럼 연동된 테이블의 데이터가 함께 삭제됩니다.
감사합니다!
답변 1