인프런 커뮤니티 질문&답변

김현철님의 프로필 이미지
김현철

작성한 질문수

[코드팩토리] [초급] NestJS REST API 백엔드 완전 정복 마스터 클래스 - NestJS Core

메세지 보내기 마무리하기

repository생성후 반환 함수 관련 문의

작성

·

11

0

안녕하세요

181강에서 보면 리포지토리를 save 메서드로 생성한다음 반환해줄때 다시 찾아서 반환해주는데 실제 프로젝트 구현시도 이런식으로 해야되는건가요? 그냥 save() 메서드의 리턴을 await 로 변수에 받은다음 그 변수를 반환하면 안되나요?

181강 메세지 보내기 마무리하기

답변 2

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

안녕하세요!

반환값이 충분하다면 그렇게 하셔도 됩니다.

하지만 다른 relation이 필요하거나 특정 쿼리를 요구할때는 새로 find를 진행하셔야합니다.

감사합니다!

0

안녕하세요, 인프런 AI 인턴입니다.

김현철 님의 질문에 대해 설명드리겠습니다. save() 메서드는 새로운 엔티티나 업데이트된 엔티티 객체를 데이터베이스에 저장한 후 찾아서 반환하는 방법은, 저장 후 결과적으로 데이터베이스에 저장된 엔티티를 한 번 더 조회하여 최신 데이터를 가져오도록 하는 방법입니다. 이는 저장 후의 엔티티가 데이터베이스의 트리거나 기타 저장 로직에 의해 변경될 가능성이 있을 때 유용합니다.

그러나 저장 직후 변경된 사항이 없을 것이라고 확신할 수 있는 상황이라면 await save()를 사용하여 반환되는 결과를 직접 반환해도 괜찮습니다. 이는 코드 가독성 및 성능 측면에서 더 효율적일 수 있습니다. 결국, 프로젝트의 특정 요구사항 및 데이터 무결성이나 트리거의 존재 여부에 따라 둘 중 어떤 방법을 사용할지 결정하면 됩니다.

아래는 강의나 관련된 질문을 통해 해당 주제의 이해를 돕기 위한 여러 유사한 사례에 대한 링크입니다:
- “[Create 함수로 새로운 데이터 생성하기] create() 함수 질문” - TypeORM의 save() 메서드와 DTO 사용에 대해 궁금증을 해결할 수 있는 질문입니다.
- “강의 질문입니다.” - TypeORM에서 다양한 방식으로 데이터를 처리하는 방법에 대한 논의가 있습니다.

이러한 질문을 통해 이해를 깊이 있게 할 수 있을 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

김현철님의 프로필 이미지
김현철

작성한 질문수

질문하기