tutorial sequelize que node mayor example node.js postgresql sequelize.js

node.js - node - sequelize model



Ordenar resultados de modelos cargados de entusiasmo en Node Sequelize (3)

Creo que puedes hacer:

db.Page.findAll({ include: [{ model: db.Gallery include: [{ model: db.Artwork }] }], order: [ [ db.Gallery, ''order'', ''DESC'' ], [ db.Gallery, db.ArtWork, ''order'', ''DESC'' ] ] })

Tengo un conjunto complejo de modelos asociados. Los modelos se asocian utilizando tablas de unión, cada una con un atributo llamado ''orden''. Necesito poder consultar la ''Página'' del modelo padre e incluir los modelos asociados y ordenar esas asociaciones por el campo ''orden''.

Lo siguiente no tiene efecto en el orden de clasificación de los resultados:

db.Page.findAll({ include: [{ model: db.Gallery, order: [''order'', ''DESC''], include: [{ model: db.Artwork, order: [''order'', ''DESC''] }] }], })


Si también usa ''como'' y digamos que quiere ordenar por ''createdDate'', la consulta se ve así:

DbCategoryModel.findAll({ include: [ { model: DBSubcategory, as: ''subcategory'', include: [ { model: DBProduct, as: ''product'', } ], } ], order: [ [ {model: DBSubcategory, as: ''subcategory''}, {model: DBProduct, as: ''product''}, ''createdDate'', ''DESC'' ] ] })


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'' ] ]