I'm trying to deep populate a collection.
For example
// UnitType.js
name: { type: 'string' }
// Unit.js
unitType: {
model: 'unitType',
via: '_id',
required: true,
index: true
}
// Product.js
unit: {
model: 'unit',
via: '_id',
required: true,
index: true
},
The problem is, that - as far I know from internet research deep populate like
Product.find().populate('unit.unitType');
is currently not supported in sails. To achieve the result I want I currently
- query Products with populate
unit
- query UnitTypes with the id from `product.unit.unitType``
.map()
product.unit.unitType
with the response
This is of course far from ideal. I also tried using toJSON
in the model to "pre-populate" the unitType
-> doesn't work since this doesn't support Promises.
There are quite a few threads on so and PR's on github on this issue, but so far I haven't found a solution to this problem. Is there any way to make this better?