You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Directus的REST请求中正确使用groupby、alias与aggregate功能

Directus v9.0.0-rc.93 聚合/分组/别名不生效问题解决方案

问题场景

使用Directus v9.0.0-rc.93版本发起API请求,尝试实现聚合、分组及别名设置功能,严格按官方文档操作后功能无法生效,仅返回原始字段的行数据。
请求截图:
postman screenshot
返回响应如下:

{
    "meta": {
        "total_count": 9,
        "filter_count": 8
    },
    "data": [
        {
            "userid": 1,
            "earnpoints": 1000,
            "cardcolor": "#E35169"
        },
        {
            "userid": 1,
            "earnpoints": 1000,
            "cardcolor": "#F7971C"
        },
        {
            "userid": 1,
            "earnpoints": 1000,
            "cardcolor": "#9E8DE4"
        },
        {
            "userid": 1,
            "earnpoints": 10,
            "cardcolor": null
        },
        {
            "userid": 1,
            "earnpoints": 5,
            "cardcolor": null
        },
        {
            "userid": 1,
            "earnpoints": 10,
            "cardcolor": null
        },
        {
            "userid": 1,
            "earnpoints": 5,
            "cardcolor": null
        },
        {
            "userid": 1,
            "earnpoints": 3505,
            "cardcolor": null
        }
    ]
}

问题原因

  • Directus v9.0.0-rc.93属于早期预发布候选版本,聚合、分组、别名功能在该版本中存在已知未修复缺陷,相关功能直到v9.0.0正式版及之后的稳定版本才完成完整适配,官方公开文档的参数规则是对齐正式版的,直接套用自然无法在该rc版本上生效。
  • 若请求参数配置不符合rc.93版本的特殊语法规则,或fields参数中保留了非分组、非聚合的原始字段,也会导致聚合逻辑不触发,直接返回原始行数据。

解决方案

方案1(推荐):升级Directus版本

直接升级到v9.0.0正式版或更高的稳定版本,该版本已修复所有聚合查询相关缺陷,参数逻辑和官方文档完全对齐,按文档配置即可正常使用聚合、分组、别名功能。

方案2(暂不升级适配rc.93版本)

调整请求参数适配该版本的特殊规则:

  1. 移除fields参数中的非分组、非聚合字段,避免触发原始行数据返回逻辑
  2. 聚合参数按照aggregate[函数名][字段名]=别名格式配置,比如计算earnpoints的总和并设置别名为total_earn,参数为aggregate[sum][earnpoints]=total_earn
  3. 分组参数按照group[]=字段名格式配置,比如按userid分组,参数为group[]=userid
  4. 普通字段重命名的别名配置按照alias[新别名]=原字段名格式配置,比如将userid改名为uid,参数为alias[uid]=userid

内容的提问来源于stack exchange,提问作者Arpit Vasani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 14:39:02