如何在AQL输出中展示仓库名、所有制品名及可选邮箱属性?
解决AQL查询获取所有制品及可选属性的问题
你的原查询只会过滤出包含@Contact-Adress属性的制品,所以看不到没有该属性的条目。要获取仓库下所有制品,同时按需显示邮箱属性,需要调整查询的投影规则:
使用projection明确指定要返回的字段,这样不管制品有没有邮箱属性,都会被返回,有属性的话就显示该字段:
items.find({"repo": {"$eq": myRepo}}).projection({"repo": 1, "name": 1, "@Contact-Adress": 1})
说明:
repo: 1:指定返回仓库名称name: 1:指定返回制品名称@Contact-Adress: 1:指定返回邮箱属性,制品存在该属性时会显示,不存在则不包含该字段(或显示为null,依Artifactory版本而定)
这样就能拿到仓库下所有制品的基础信息,同时自动带上存在的邮箱属性了。
内容的提问来源于stack exchange,提问作者Sila
相关产品推荐
相关产品推荐

