Eclipse Hawkbit过滤查询:如何匹配未分配分发的设备?
Eclipse Hawkbit UI 过滤未分配特定分发及无分发设备的正确方法
要同时获取未分配任何分发和分配了非"foo"分发的设备,需要组合两个过滤条件,用OR逻辑连接:
assignedds IS EMPTY OR assignedds.name!="foo"
为什么之前的尝试无效?
- 单独使用
assignedds.name!="foo"时,仅能匹配存在已分配分发的设备——未分配任何分发的设备因assignedds是空集合,没有name属性可供判断,会被过滤掉。 assignedds.name==NULL或assignedds.name==""无效的原因同上:无分发设备的assignedds集合为空,不存在name属性,无法通过属性层面判断空值。assignedds.name=="*"能返回设备是因为通配符匹配了所有存在的分发名称,但assignedds.name!="*"会排除所有有分发的设备,同时也匹配不到无分发设备(同样因为空集合无name属性),所以返回空结果。
补充说明
Hawkbit的过滤语法中,判断关联集合是否为空,需直接针对集合本身用IS EMPTY(部分版本也支持==empty),而非针对集合内属性做空值判断。
内容的提问来源于stack exchange,提问作者Al G
相关产品推荐
相关产品推荐

