例如,我有一个具有帖子(HasMany)的用户和具有属于用户和帖子的喜欢的帖子。因此,当我尝试获取与每个用户相关的帖子的所有用户时,我试图获取每个帖子中的点赞总数。
const users = User.query().withGraphFetched('[posts.[likes, files]]')
.select(['user_table.*', User.relatedQuery('posts').count().as('totalPosts')])
Run Code Online (Sandbox Code Playgroud)
在上面的例子中我得到了totalPosts。没关系,但是如果我想获得每个帖子的总点赞数怎么办?
最终期待这样的事情:
const users = User.query().withGraphFetched('[posts.[likes, files]]')
.select(['user_table.*', User.relatedQuery('posts').innerRelated('likes').count().as('totalLikes')])
Run Code Online (Sandbox Code Playgroud)
并期望用户输出数组如下:
[{
id: 9323,
firstName: 'John',
lastName: 'Travolta',
posts: [{
id: 2,
totalLikes: 99,
files: [File],
}],
bio: 'Actor'
}]
Run Code Online (Sandbox Code Playgroud)