Project : Music Flower/Error Handling

hasMany와 belongsTo 관계 설정시 옵션을 넣지 않았을 때

괴발새발자 2022. 3. 6. 13:39

테이블을 생성할 때 미리 외래키가 될 필드를 생성한 경우

hasMany, belongsTo 관계 설정시 옵션에 해당 필드를 적어줘야한다.

//옵션을 넣은 예
static associate(models) {
  models.Post.hasMany(models.Comment, { foreignKey: 'postId', sourceKey: 'id'});
  models.Post.belongsTo(models.User, { foreignKey: 'userId', targetKey: 'id'});
}

그렇지 않을 경우  중복되는 필드를 생성해서 에러가 발생한다.

//에러 발생됨
static associate(models) {
  models.Post.hasMany(models.Comment);
  models.Post.belongsTo(models.User);
}