더북(TheBook)

7.6.3.1 1:N

시퀄라이즈에서는 1:N 관계를 hasMany라는 메서드로 표현합니다. users 테이블의 로우 하나를 불러올 때 연결된 comments 테이블의 로우들도 같이 불러올 수 있습니다. 반대로 belongsTo 메서드도 있습니다. comments 테이블의 로우를 불러올 때 연결된 users 테이블의 로우를 가져옵니다.

▲ 그림 7-56 1:N 관계

모델 각각의 static associate 메서드에 넣습니다.

models/user.js

...
  static associate(db) {
    db.User.hasMany(db.Comment, { foreignKey: 'commenter', sourceKey: 'id' });
  }
};

models/comment.js

...
  static associate(db) {
    db.Comment.belongsTo(db.User, { foreignKey: 'commenter', targetKey: 'id' });
  }
};
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.