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

dlwogns3413님의 프로필 이미지

작성한 질문수

[리뉴얼] React로 NodeBird SNS 만들기

팔로우 / 언팔로우

await user.addFollowers(req.user.id)에서 궁금한점이 있습니다.

21.12.15 23:05 작성

·

212

0

user.addFollowers(req.user.id)를 했을경우 

데이터 베이스를 보니깐 followedId에는req.user.id가 ,

followingId에는 userId가 들어가 있는걸 확인했는데요.

저희가 데이터베이스 구조를 짤때 as를 Followers 해주고 

foreignkey를 FollowingId로 해줬잖아요? 

그러면 user.addFollowers(req.user.id)를 했을경우 

as: Followers 의 foreignkey가 FollowingId니깐 req.user.id가 FollowingId에 들어가는게 맞는거 아닌가요?? 왜 반대로 됬는지 이해가 안됩니다 ㅠㅠ

답변 1

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

2021. 12. 15. 23:32

많이 헷갈려하시는 부분인데요. 결론적으로는 as를 기준으로 생각하시면 됩니다.

내 Followers를 모두 찾을 때를 생각해봅시다. 아이러니하게도 followerId가 아니라 followingId를 봐야 찾을 수 있습니다. followingId가 내 아이디랑 같은 로우의 followerId를 모두 불러오면 그게 내 follower들입니다. 그리고 이게 바로 foreignKey의 역할입니다. 원하는 것과 연결된 외부의 것을 가리킵니다. 그래서 제가 설명에서 belongsToMany는 as와 foreignKey가 반대라고 한 겁니다.

dlwogns3413님의 프로필 이미지
dlwogns3413
질문자

2021. 12. 16. 00:04

감사합니다!