Firestore 查询 - 一对多关系

2024-03-05

我将开发 Android 移动应用程序并使用 Firebase 作为后端。我是 NoSql Firestore 的新手。

在我的应用程序中,用户有很多主题。一个主题有很多帖子,帖子有很多评论和一张图片。用户也有很多追随者。

在这种情况下,我如何根据我的要求设计 Firestore 数据库以及最佳实践是什么?如何减少读取次数?

以下结构可以满足我的要求吗?

Firestore-root
    |
    --- Topic (collections)
    |     |
    |     --- topicId (document)
    |            |
    |            --- topicId: "345"
    |            |
    |            --- title: "Topic Title"              
    |            |
    |            --- viewCount: 20
    |            |
    |            --- likeCount: 30
    |            |
    |            --- Posts (colletion)
    |            |     |
    |            |     --- postId
    |            |            |
    |            |            ---postId: "321"
    |            |            |
    |            |            ---Title: "My title"
    |            |            |
    |            |            --- Image: ' '
    |            |            |
    |            |            --- commentsCount: 1
    |            |            |
    |        |            --- comments (colletion)
    |            |          |
    |            |           --- commentId
    |            |                             |
    |            |                            ---commentId: "123"
    |            |                        |
    |            |                   ---comment: "My Comment"
    |            |                             |    
    |            --- likes (colletion)
    |            |     |
    |            |     --- likeId (document)
    |            |            |
    |            |            --- userId: true
    |            | 
    |         
    |
     --- Users (collections)
    |     |
    |     --- userId (document)
    |            |
    |            --- userId: "345"
    |            |
    |            --- name: "Test Name"              
    |            |
    |            --- followersCount: 20
    |            |
    |            --- followingCount: 30

作为一个简短的回答,是的,对于您的特定要求来说,我看起来不错。我已经answered https://stackoverflow.com/questions/52038449/reduce-number-of-read-in-firestore-android/52040609#52040609今天早些时候的一个问题,几乎和你的问题一样,我已经提供了与你已经拥有的类似的数据库模式。但您需要知道,构建 Cloud Firestore 数据库并没有完美的解决方案。最好的解决方案是适合您的需求并使您的工作更轻松的解决方案。但关于这种结构,我发现您可以轻松查询以获取所有必要的数据,所以在我看来,继续这样做。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Firestore 查询 - 一对多关系 的相关文章

随机推荐