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

SJ님의 프로필 이미지

작성한 질문수

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

Followers & Followees 프로퍼티 생성하기

Followers & Followees 프로퍼티 생성

24.08.30 10:12 작성

·

15

0

강의 2:30 쯤에서

@ManyToMany(() => UserModels, (user) => user.followees)
@JoinTable()
followers: UserModel[];

@ManyToMany(() => UsersModel, (user) => user.followers)
followees: UserModel[];

 

위처럼 되어있는데요 .

혹시

@ManyToMany(() => UserModels, (user) => user.followers)
@JoinTable()
followers: UserModel[];

@ManyToMany(() => UsersModel, (user) => user.followees)
followees: UserModel[];

이렇게가 아닌가요 ??

답변 2

0

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

2024. 08. 30. 16:44

안녕하세요!

제가 보기엔 위 코드가 맞을 것 같은데 어떤 이유때문에 그러실까요?

감사합니다!

0

인프런 AI 인턴님의 프로필 이미지

2024. 08. 30. 10:16

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

SJ님의 질문은 정말 중요한 점을 건드리고 있습니다. 코드의 작성 방식에 따라, followerfollowee를 설정하는 방법에 혼동이 올 수 있습니다. 제가 찾아본 바에 따르면, 해당 부분에 관해 직접적으로 이야기한 질문이 있습니다:

  • followers and followees 프로퍼티 생성하기 질문” 에서는 유사한 의문을 제기했습니다. 이 질문에서는 followersfollowees가 반대로 설정되어 있지 않은지 문의했었는데요. 지식공유자께서는 질문을 확인하고, 코드 설명에 혼동이 있었을 수 있음을 인정했습니다.

진행한 코드 부분과 관련하여, @ManyToMany 관계 설정에서 followersfollowees는 상호 관계를 의미합니다. 실제 다대다(ManyToMany) 관계에서는 @JoinTable을 사용하는 쪽이 관계의 “소유자”쪽이 되며, 이 세팅이 어떻게 설정되어 있는지는 그 관계를 어떻게 해석할지에 대한 문맥을 제공합니다.

  • followers 프로퍼티가 @JoinTable()을 사용하고 있다면, 이는 팔로워(follower) 관계를 소유하고 있는 것으로 해석할 수 있습니다.
  • 반대로 followees@JoinTable()이 설정된다면, 그 관계는 팔로잉(followee)에 초점을 맞추고 있는 것으로 볼 수 있죠.

위의 설명을 바탕으로 하면, SJ님의 제안대로 코드를 바꾸는 것이 보다 명확한 의미 전달에 도움이 될 것 같습니다. 하지만, 실제로 중요한 것은 코드의 일관성과 그 관계가 어떻게 데이터베이스에 반영되는지를 이해하는 것입니다.

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

SJ님의 프로필 이미지

작성한 질문수

질문하기