我不明白如何执行以下查询:
说明:
我试图根据表中的值过滤我的结果,该表与表I相关联,表与我试图过滤的模型相关联。
FilteredModel < - (hasMany) - MiddleModel - (hasone) - > LastModel
FilteredModel.findAll({
where: {
...conditions,
['$MiddleModel.LastModel.property$']: VARIABLE
}
});
我已经包含了必要的模型,并且我收到了我在结果中寻求的财产的价值。
我只是不明白如何将它添加到where
考虑因素。
我尝试了其他SOF答案中提出的许多形式的提供示例,接收:SequelizeDatabaseError: Unknown column 'FilteredModel->MiddleModel->LastModel.property' in 'where clause'
错误。
我可以在这里得到一些指导吗?
嗨尝试下面的代码 -
Db.orders.findAll({
where: { ORDER_CONDITION },
attributes: [ORDER ATTRIBUTES],
include: [
{
where: { INNER1_WHERE },
required: true,
model: INNER1,
include: [
{
where: { INNER2_WHERE },
required: true,
model: INNER2
},
]
},
]
});
required:true param in include扮演重要角色,仅包括那些包含其中的订单
同样在你的代码中,我没有看到include选项,但你正在使用包含属性['$ MiddleModel.LastModel.property $']的条件:VARIABLE