Firestore:检查子集合是否存在的最佳方法?

时间:2017-11-28 11:47:44

标签: angularfire2 google-cloud-firestore

├── users ----------------------------------------------- collection
│   ├── u1 ---------------------------------------------- document
│   │   ├── displayName: "John Smith"
│   │   ├── email: "public"
│   │   ├── photoURL: "xxx.png"
│   │   │
│   |   └── chatChannels -------------------------------- subcollection
│   |       └── c1
|   |            ├── channelId: "c1"
|   |            ├── joinedAt : 12/12/2017
│   │   ```
|   
├── converstations -------------------------------------- collection
│   ├── c1  --------------------------------------------- document  
│   |   ├── channelName: "Channel 1"
│   |   ├── channelType: "public"
│   |   ├── channelIcon: "channel.png"
│   |   │   
│   |   ├── members ------------------------------------- subcollection
│   |   |    ├── u1
│   |   |    |   ├── userId: "u1"
|   |   |    |    
|   |   |    
|   |   ├── messages ------------------------------------ subcollection
│   |        ├── m1
│   |            ├── from: "u1"
|   |            ├── message: "hello"
|   |            ├── timestamp: 12/12/2017 00:09 PM

这是我使用firestore构建的聊天应用结构。从文档中删除子集合只有一个问题。

  1. 删除文档。
  2. 如果存在子集,请将其删除。
  3. 例如,如果我删除"Channel 1",则还需要删除所有子集(membersmessages)。

    让我说我不知道​​他们的名字,因为我只是想做一个     整个项目的共同提供者。在其他情况下,我可以使用batch operations

    手动创建

1 个答案:

答案 0 :(得分:0)

递归删除未内置到客户端库中。如果您确实需要以递归方式删除文档及其所有子集,则可以使用Firebase consoleFirebase cli