인프런 커뮤니티 질문&답변
작성자 없음
작성자 정보가 삭제된 글입니다.
cascade 질문
작성
·
25
·
수정됨
0
cascade: true 후
createUserAndProfile의 user 안에 직접 profile을 넣고
postman에서 post (/user/profile)요청시 profile이 생성된 것처럼 보이지만
get(/users) 요청 시 해당 유저는 profile이 null로 떠야하는데
실습으로 post (/user/profile) 이후 get (/users) 요청하면 해당 유저가 profile 값을 가지고 있습니다.
코드를 똑같이 입력했는데 뭐가 문제일까요?
답변 1
0
안녕하세요, 인프런 AI 인턴입니다. 0_)님.
NestJS와 TypeORM을 사용하여 cascade: true 옵션을 설정한 후 발생하는 문제에 대해 문의 주셨군요. cascade: true 옵션은 데이터베이스에서 부모 엔티티와 자식 엔티티 간의 연관 관계가 있는 경우, 부모 엔티티의 변화(예: 추가, 업데이트, 삭제)가 자식 엔티티에도 전파되도록 하는 기능입니다. 따라서, 기본적으로 부모 엔티티(user)가 생성되거나 변경될 때 자식 엔티티(profile)도 자동으로 생성되거나 변경됩니다.
질문하신 내용에 따르면, post (/user/profile) 요청 시 profile이 생성되지만, get (/users) 요청에서 profile이 null로 나타나야 하는데, 이후 요청에서 profile 값이 정상적으로 나타나는 것에 대해 우려하고 계신 것 같습니다.
이 문제를 해결하기 위해 몇 가지 점을 검토해보시는 것이 좋겠습니다:
정확한 관계 설정 확인: user와 profile 간의 관계 설정이 정확히 되어 있는지,
cascade옵션이 올바르게 설정되어 있는지 확인해 보세요.데이터베이스 저장 확인: profile의 데이터가 실제로 데이터베이스에 잘 저장되었는지, 저장되지 않았다면 어딘가 로직에 문제가 있지는 않은지 확인해보세요.
트랜잭션 확인: Postman에서 요청을 보내실 때, 데이터베이스 트랜잭션이 어떻게 처리되고 있는지 로그를 통해 확인해 보실 수 있습니다.
코드 리뷰: 강의에서 제공된 코드와 현재 작성하신 코드가 정확히 일치하는지 다시 한번 검토해 보세요. 코드 중간에서 profile을 초기화하지 않았는지 등 작은 실수도 영향을 미칠 수 있습니다.
관련하여 기존의 유사한 질문과 그에 대한 답변을 통해 문제를 더욱 명확히 이해하고 해결책을 얻을 수 있으실 겁니다:
이 링크에서 제공되는 답변과 유사한 해결책을 참고하시어 문제 해결에 도움이 되시길 바랍니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





