如何使用CKAN API在数据集查询中添加分组筛选条件
CKAN API 新增分组筛选规则方法
直接在原有fq参数的过滤逻辑后追加分组过滤条件即可,CKAN的package_search接口基于Solr查询语法实现字段过滤,分组对应的索引字段为groups,取值为group_list接口返回的分组英文标识。
调整后的请求示例
在原标签过滤规则后添加AND groups:目标分组名,注意空格和特殊符号要做URL编码:
http://localhost/api/3/action/package_search?fq=tags:(my-first-tag%20AND%20my-second-tag)%20AND%20groups:my-target-group&rows=2
常见排查点
- 若需要筛选同时属于多个分组的数据集,可写为
groups:(group1%20AND%20group2),只需满足任意一个分组的话将AND改为OR即可 - 必须使用分组的英文标识(
group_list接口直接返回的字符串),不能用分组的前端显示名称 - 若过滤不生效,可先调用
package_show接口查询已加入目标分组的单个数据集详情,确认其groups字段下的name属性和你使用的分组名完全一致
内容的提问来源于stack exchange,提问作者Ravers
相关产品推荐
相关产品推荐

