我有这样的疑问
Query<Map<String, dynamic>> pageChat = _fireStore
.collection('chat')
.where('chatUsersId', arrayContains: firebaseUser!.uid)
.where('chatStatus', isEqualTo: true)
.orderBy('lastMessageDate', descending: true)
.limit(10);
通过什么逻辑可以查询固定消息?有一个名为 chatUsersId 的数组,还有一些保存成员 ID 的字段,称为 chater 和pairer。我想用两个名为chaterPinned:true和pairerPinned:true的字段来解决它,但我不知道可以使用什么逻辑来查询它。
这听起来像是查询中使用 OR 条件的好例子。
类似:
_fireStore
.collection('chat')
.where(
Filter.or(
Filter.and(
Filter('chatUsersId', arrayContains: firebaseUser!.uid)
Filter('chatStatus', isEqualTo: true)
),
Filter('chaterPinned', isEqualTo: true),
Filter('pairerPinned', isEqualTo: true)
)
)
.orderBy('lastMessageDate', descending: true)
.limit(10);