Cas*_*sen 1 firebase google-cloud-firestore
我有这个数据库结构:
Firestore-root
|
--- sites (collection)
| |
| --- common (document)
| |
| --- //templates (collection)
| |
| --- //menus (collection)
| |
| --- //articles (collection) <----
| --- other (document)
| |
| --- //articles (collection)
Run Code Online (Sandbox Code Playgroud)
当我尝试将文章添加到数据库(如箭头所示)时,“common”和“other” - 文档为斜体,因此不存在。
我尝试添加时的代码:优先级很常见,类型是文章。
def documentReference = firestoreClient.databaseReference.collection(siteName).document(priority).collection(TYPE).document(key)
documentReference.set(article)
Run Code Online (Sandbox Code Playgroud)
这是控制台:

这是构建我的数据库的糟糕方法还是有快速修复?
我曾尝试先创建子集合,但没有任何运气!
Firebase 控制台并未指示您删除了“common”和“other”文档。这是告诉你,它只是不存在。这些文档不存在是因为您根本没有创建它们。你所做的,只是 在一个本来就不存在的文档下创建一个子集合。换句话说,它只是为该集合中的文档“保留”一个 id,然后在其下创建一个子集合。通常情况下,你应该只创建的实际文件子集合做存在,但是这是怎么看起来像当文档不存在。
需要记住的一件事是,在 Cloud Firestore 中,文档和子集合不像文件系统文件和目录那样工作。如果在文档下创建子集合,它不会隐式创建任何父文档。子集合不以任何方式绑定到父文档。
以斜体显示的文档 ID 不一定被“删除”。它们以这种方式显示,因为该文档不存在。换句话说,该位置没有物理文档,但该位置下有其他数据。
如果你想纠正它,你必须至少编写一个可以保存值的属性。
PS 在 Firestore 中,如果您删除一个文档,它的子集合仍然存在。
| 归档时间: |
|
| 查看次数: |
1622 次 |
| 最近记录: |