개체의 부모 테이블 정보를 찾고 싶습니다.자식에서 부모 테이블 찾기를 sequelize
나는 사용자 hasMany 도서 을 보유하고 있습니다. 여기서는 작가가 있으며 사용자 ID에 할당되어 있습니다. 도서에 판타지, 로맨스, 역사, 과학 소설 ... 등이있는 유형이 있습니다.
그래서 과학 소설 유형의 책을 찾고 싶습니다. 그뿐 아니라 작가도 필요합니다. 사용자.
어디서 책을 볼 수 있습니까? Book.findAll (include : User)의 'include'가 작동하지 않는 것 같습니다. 이것은 include가 부모가 아닌 자식 테이블을 찾는데 만 작동한다는 것을 알려줍니다. 여기
사용자const User = sequelize.define('User', {
id: { type: DataTypes.STRING(6), field: 'ID', primaryKey : true }
}
associate: function(models) {
User.hasMany(models.Book, { foreignKey: 'userId' });
}
및 도서에 대한 몇 가지 코드입니다
const Book = sequelize.define('Book', {
id: { type: DataTypes.STRING(6), field: 'ID', primaryKey: true }, // primary key
userId: { type: DataTypes.STRING(6), field: 'USER_ID', primaryKey: true }
type: { type: DataTypes.STRING(20), field: 'TYPE'
}
책은 좀 더 자식 테이블을 가지고 있는데에 포함하는 추가 정보를 찾을려고, 그래서 내가 정말 필요 추측 Book.findAll (...) 에서 찾아내는 대신 User.findAll (포함 : 도서).
아무도 도와 줄 수 있습니까?
죄송합니다. Sequelize의 규칙은 매우 간단합니다. 다중 기본 모델은 복잡한 포함 모델 간의 행 구분을 허용하지만 두 테이블간에 하나의 외래 키만 허용됩니다. 둘 이상이 있다면, 그것은 미친 듯이 갈 것입니다. –