在使用Node.js的Sequelize ORM框架时,如果在查询时加上included表示要做join查询
例如
db.User.findAll({ include: [{ model: db.Message, required: true }] }) .then((users) => { res.json(users); }) .error((error) => { res.sendStatus(500); });
但如果在一开始定义时没有加上hasMany、belongsTo就会出现
xxx is not aoociated to xxx 的错误讯息
Google了一会,看起来一定要先定义关係,才能做这种查询了,记得以前在JAVA用Hibernate也是一样的状况。
请问他们这样设计的原因为何?
有什麽替代方桉可以做无关係的join查询吗?