아직 서버

외래키 ( foriginKey )

외래키는 1 : N 에서 N 값이 1을 찾아갑니다. 1 에서 N 을 찾아가게 된다면
PK(primary key)가 다수 이기때문입니다.
그래서 , N에서 외래키값을 가지고 1 에게 찾아갑니다.
N 에서 외래키 값이 Null 이면 참조 무결성이 깨지지 않습니다.
그것은 없으니깐 찾아갈 이유가 없기때문입니다.
그런데 1 에서 값이 Null 이면 참조 무결성이 깨집니다.
N 이 자식, 1 이 부모

db.user.hasMany(db.post, {
  foreignKey: "poster",
  souceKey: "id"
});

db.post.belongsTo(db.user, {
  foreignKey: "poster",
  targetKey: "userId"
});

Following

db.User.belongsToMany(db.User, {
  foreignKey: "followingId",
  as: "Followers",
  through: "Follow"
});
db.User.belongsToMany(db.User, {
  foreignKey: "followerId",
  as: "Followings",      
  through: "Follow"
});

/*
    as : 매칭 모델 이름
    foreignKey :  상대 테이블 아이디

    ex: 
          user             follow             user
       1 - su             1 - 2              1 - su
       2 - yang           1 - 3              2 - yang
       3 - ho             3 - 4              3 - ho
       4 - ya            2 - 3               4 - ya

       이렇게 짝을 지으면 누가 누구를 이어주는 지모르기때문에 as  사용
*/