2014-05-13 2 views
2

나는이 다음과 같이 정의 된 두 모델 사이의 연관성 : (별도의 파일에서) (별도의 파일에) 연락 모델Sequelize onDelete 작동하지

사용자에 대한

classMethods: { 
     associate: function (models){ 
     Contact.belongsTo(models.User) 
     } 
} 

classMethods: { 
    associate: function (models){ 
     User.hasMany(models.Contact, {onDelete: 'CASCADE'}) 
    } 
} 

문제는 사용자를 삭제할 때 내가 뭘 잘못했는지에 대한 조언을 삭제하지 않는다는 것입니다.

미리 감사드립니다.

답변

4

나는 다른 방법으로 정의해야한다고 생각합니다.

Contact.belongsTo(models.Users, { 
    foreignKeyConstraint: true 
    , onDelete: 'cascade' 
}) 
+0

감사합니다. 설명서가 오해의 소지가 있습니다. doc에서, belongsTo는 onDelete = 'CASCADE'옵션을 가지고 있지 않으며 오직 hasMany 만 가지고 있습니다. 정말 다른 방향 일 것입니다. – Liwen

+1

이런 식으로'onDelete : 'cascade ''를 사용 했습니까? [documentation] (http://sequelize.readthedocs.org/en/latest/api/associations/index.html?highlight=onDelete#hasmanytarget-options)는 hasMany 함수로'cascade' 옵션만을 보여줍니다. 나는 약간 혼란 스럽다. – JuHwon

+2

나는 (지금) 문서화 된대로 따라야 만했다. –