【发布时间】:2019-07-30 16:43:11
【问题描述】:
所以我想获取帖子中 cmets 的数量,而不是所有 cmets 本身
我已经让它像这样与 modifyEager 一起使用,但在这种情况下,as('count') 似乎什么也没做
.eager('comments').modifyEager("comments", builder => {
builder.count().as('count')
})
这真的很乏味,因为每个帖子的 cmetsCount 都有这些值:
[]
[]
[]
[]
[ Post { 'count(*)': 1 } ]
[]
所以我得到了计数,但我肯定做错了什么
if(commentCount.length > 0)
return data[0]["count(*)"]
return 0
有什么想法吗?
编辑:显示工作代码以供参考以帮助人们
module.exports = async (organizationId, scope) => {
return await Post.query()
.where("organization_id", organizationId)
.orderBy("post_id", "desc")
.limit(scope.limit)
.offset(scope.offset)
.select(
'posts.*',
Post.relatedQuery('comments').count().as('commentsCount')
)
.eager('users')
}
【问题讨论】:
标签: node.js mysql2 eager objection.js