使用 . equalTo(布尔值,字符串键)不起作用
Firebase query using . equalTo (boolean value, String key) not working
我正在尝试查询我的数据以检索按字母顺序排序并按标记为“可见”的项目过滤的项目列表。
这是我的数据结构。
listItems
list_1_uid
item_1_uid
name: "Item 01"
nameLowercase: "item 01"
visible: true
item_2_uid
name: "zItem 02"
nameLowercase: "zitem 02"
visible: false
item_3_uid
name: "aItem 03"
nameLowercase: "aitem 03"
visible: true
这是我的查询。
mQuery = mFirebaseDbReference
.child("listItems")
.child("list_1_uid")
.orderByChild("nameLowercase")
.equalTo(true, "visible");
我的查询returns没有数据。如果我删除 .equalTo(true, "visible") 语句查询 returns 我的整个字母顺序列表。
关于如何检索我的过滤列表有什么建议吗?
Firebase 中的查询绑定到 orderBy
调用中指定的 属性。因此,此示例中的 equalTo(boolean value, String key)
调用引用 nameLowercase
,因此它将查询 nameLowercase
设置为 true
的所有项目。第二个参数是指项目的键(例如item_1_uid
),可用于指定查询的起点。例如,这对于对结果进行分页很有用。
由于此查询没有限制,解决方案是使用按 "visible" 排序的查询,然后对 nameLowercase
客户端进行任何额外排序,最终结果为:
mQuery = mFirebaseDbReference
.child("listItems")
.child("list_1_uid")
.orderByChild("visible")
.equalTo(true);
我正在尝试查询我的数据以检索按字母顺序排序并按标记为“可见”的项目过滤的项目列表。
这是我的数据结构。
listItems
list_1_uid
item_1_uid
name: "Item 01"
nameLowercase: "item 01"
visible: true
item_2_uid
name: "zItem 02"
nameLowercase: "zitem 02"
visible: false
item_3_uid
name: "aItem 03"
nameLowercase: "aitem 03"
visible: true
这是我的查询。
mQuery = mFirebaseDbReference
.child("listItems")
.child("list_1_uid")
.orderByChild("nameLowercase")
.equalTo(true, "visible");
我的查询returns没有数据。如果我删除 .equalTo(true, "visible") 语句查询 returns 我的整个字母顺序列表。
关于如何检索我的过滤列表有什么建议吗?
Firebase 中的查询绑定到 orderBy
调用中指定的 属性。因此,此示例中的 equalTo(boolean value, String key)
调用引用 nameLowercase
,因此它将查询 nameLowercase
设置为 true
的所有项目。第二个参数是指项目的键(例如item_1_uid
),可用于指定查询的起点。例如,这对于对结果进行分页很有用。
由于此查询没有限制,解决方案是使用按 "visible" 排序的查询,然后对 nameLowercase
客户端进行任何额外排序,最终结果为:
mQuery = mFirebaseDbReference
.child("listItems")
.child("list_1_uid")
.orderByChild("visible")
.equalTo(true);