Wan*_*tal 46 postgresql node.js sequelize.js
我有一组复杂的关联模型.模型使用连接表关联,每个连接表都有一个名为"order"的属性.我需要能够查询父模型"页面"并包含关联的模型,并按字段"顺序"对这些关联进行排序.
以下对结果的排序顺序没有影响:
db.Page.findAll({
include: [{
model: db.Gallery,
order: ['order', 'DESC'],
include: [{
model: db.Artwork,
order: ['order', 'DESC']
}]
}],
})
Run Code Online (Sandbox Code Playgroud)
Cal*_*twr 90
我相信你能做到:
db.Page.findAll({
include: [{
model: db.Gallery
include: [{
model: db.Artwork
}]
}],
order: [
[ db.Gallery, 'order', 'DESC' ],
[ db.Gallery, db.ArtWork, 'order', 'DESC' ]
]
})
Run Code Online (Sandbox Code Playgroud)
Rel*_*ros 21
如果您还使用'as'并假设您想按'createdDate'排序,则查询如下所示:
DbCategoryModel.findAll({
include: [
{
model: DBSubcategory,
as: 'subcategory',
include: [
{
model: DBProduct,
as: 'product',
}
],
}
],
order: [
[
{model: DBSubcategory, as: 'subcategory'},
{model: DBProduct, as: 'product'},
'createdDate',
'DESC'
]
]
})
Run Code Online (Sandbox Code Playgroud)
order: [
[ db.Sequelize.col('order'), 'DESC'], /*If you want to order by page module as well you can add this line*/
[ db.Gallery, db.ArtWork, 'order', 'DESC' ]
]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15323 次 |
| 最近记录: |