按顺序在嵌套的加载中继续不工作
我有四个型号的Tehsil,Ilr,Patwar和Villages。 和他们的联系是
Tehsil – > 1:m – > Ilr – > 1:m – > Patwar – > 1:m – >村庄
我想要在我所有的四个模型上应用顺序。
查询:
var tehsilQuery = { include: [{ model: Ilr, as: 'GirdawariKanoongo', include: [{ model: Patwar, as: 'GirdawariPatwar', include: [{ model: Villages, as: 'GirdawariVillages', }] }] }], order: [ ['tehsil_name', 'ASC'], [ {model: Ilr, as: 'GirdawariKanoongo'}, 'kanoongo_name', 'ASC'], [ {model: Patwar, as: 'GirdawariPatwar'}, 'patwar_area', 'ASC'], [ {model: Villages, as: 'GirdawariVillages'}, 'village_name', 'ASC'], ] }; return Tehsils.findAll(tehsilQuery); [Error: 'girdawari_patwar' in order / group clause is not valid association]
如果我从order
删除了Patwar
和Villages
(lat两个模型), order
by正在工作。
我解决了它。 以下是order
外观:
order: [ 'tehsil_name', 'GirdawariKanoongo.kanoongo_name', 'GirdawariKanoongo.GirdawariPatwar.patwar_area', 'GirdawariKanoongo.GirdawariPatwar.GirdawariVillages.village_name' ]
我所要做的就是:使用as
关联表并链接它们,然后按column_name
应用该order
。
另一个嵌套sorting的例子:
order: [ [ { model: chapterModel, as: 'Chapters' }, 'createdAt', 'ASC'], [ { model: chapterModel, as: 'Chapters' }, { model: partModel, as: 'Parts' }, 'createdAt', 'ASC'] ],
部分和章节有M:1的关系。