작성
·
218
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
많이 헷갈려하시는 부분인데요. 결론적으로는 as를 기준으로 생각하시면 됩니다.
내 Followers를 모두 찾을 때를 생각해봅시다. 아이러니하게도 followerId가 아니라 followingId를 봐야 찾을 수 있습니다. followingId가 내 아이디랑 같은 로우의 followerId를 모두 불러오면 그게 내 follower들입니다. 그리고 이게 바로 foreignKey의 역할입니다. 원하는 것과 연결된 외부의 것을 가리킵니다. 그래서 제가 설명에서 belongsToMany는 as와 foreignKey가 반대라고 한 겁니다.
감사합니다!