我如何使用SailsJS填充嵌套的相关集合?
我有3个系列,
Users
,
Clan
,有许多Clanmembers
有许多Users
Clanmembers
所以当我这样做
Clan.find().populate('clanmembers');
它工作正常,并返回结果,但后来我得到了这样的事情:
{ clanmembers: [ { role: 'Entry', owner: 2, member: 2, id: 1, createdAt: null, updatedAt: null } ], owner: { username: 'tester', email: 'tester', about: 'This is\n\na test hello\n\n\n\n\n\n\n\n\nhiiii', profileurl: '', avatar: 'asd.jpg', rank: '1', id: 2, createdAt: '2015-10-25T10:15:20.000Z', updatedAt: '2015-10-25T21:31:47.000Z' }, clanname: 'testset', clantag: 'testin', id: 2, createdAt: '2015-10-26T01:07:02.000Z', updatedAt: '2015-10-26T01:07:02.000Z' }
我想要的是也能够populate
clanmembers
数组的owners
以便我可以获得用户名和什么不是的clanmembers,我怎么能填充这个嵌套的数组? 或者是不可能的,我将不得不循环/find每个人的ID。 任何信息将是非常感谢你。
尽pipe已经进行了相当长时间的谈判 ,但迄今还不能完成。
正如你所提到的,你必须手动做人口。 但是,您可以避免为每个子文档分别调用。
我通常做的是在数组中收集所需的id,然后对数据库运行一个查询,然后维护一个文档的id映射,这使得在多个地方使用它非常方便。