可以将 objects 和 objects' 的 ID 存储在 Firestore 的单独字段中吗

Is it OK to store objects and objects' ids in separate fields in Firestore

我有 collection 条,共 chats 条,我想通过聊天的成员搜索此 collection。 Collection 看起来像:

{
 ...
 owner: 'user-123',
 members: ['user-123', 'user-456'].
 membersData: [{
  id: 'user-123',
  name: 'Jack'
 },
 {
  id: 'user-456',
  name: 'Jane'
 }
 ]
 ...
}

如果成员是 objects,我无法使用 array-contains 按成员 ID 搜索的原因。这个解决方案可以吗?我在 firebase(和一般的 noSQL 数据库)方面的经验很少,所以可能有针对此类任务的最佳实践吗?

是的,如果您希望能够仅搜索会员 ID,那是完全可以接受的,实际上是惯用的方法。

另见:

  • Firestore - query where filter of object in array field
  • 我对 How to fetch data from multidimensional array in firebase
  • 的回答