Tengo el siguiente modelo de datos (simplificado), vea la representación visual debajo de la publicación:
Ahora quiero devolver una lista de artículos en un cierto orden, usando paginación. Estoy usando un ViewSet predeterminado para ello. La paginación me obliga a hacer el pedido en la base de datos, en lugar de hacerlo más tarde en Python. Sin embargo, parece que no puedo encontrar la cláusula de ordering correcta que ordena estos artículos. Lo que tengo que hacer es:
La siguiente consulta SQL hace el trabajo (para todos los artículos):
SELECT art.order_id, art.uuid, att.value, mdr.code, mdr.name, mdr.sorting_code FROM ow_order_article art INNER JOIN ow_order_attribute att ON att.article_id = art.uuid INNER JOIN ow_masterdata_type mdt ON att.masterdata_type_id = mdt.uuid INNER JOIN ow_masterdata_record mdr ON att.value = mdr.uuid WHERE mdt.code = 'article_structure' ORDER BY mdr.sorting_code, mdr.code¿Cuál sería la forma correcta de obtener este pedido en un conjunto de consultas en Django?