【发布时间】:2018-07-26 05:24:59
【问题描述】:
我正在通过 Firebase 控制台将数据添加到 Cloud Firestore。我添加了一个集合以及相应的文档和字段。当我点击“添加文档”时,新文档随机出现在文档列上(据我所知)。我希望新生成的文档出现在文档列的底部。在应用程序上查看数据时,顺序很重要。数据在回收站视图中使用。这可能吗?
【问题讨论】:
标签: firebase google-cloud-firestore firebase-console
我正在通过 Firebase 控制台将数据添加到 Cloud Firestore。我添加了一个集合以及相应的文档和字段。当我点击“添加文档”时,新文档随机出现在文档列上(据我所知)。我希望新生成的文档出现在文档列的底部。在应用程序上查看数据时,顺序很重要。数据在回收站视图中使用。这可能吗?
【问题讨论】:
标签: firebase google-cloud-firestore firebase-console
Cloud Firestore 的文档排序方式与 RTDB 不同。自动 ID 与时间无关。您将需要添加一个时间戳字段并按此字段对数据进行排序。
你可以阅读这个here。
重要提示:与 Firebase 实时数据库中的“推送 ID”不同,Cloud Firestore 自动生成的 ID 不提供任何自动排序。如果 您希望能够按创建日期订购您的文档,您 应该将时间戳作为字段存储在文档中。
【讨论】:
我使用了 Firestore 的“set”方法而不是“add”,并使用了数字日期字符串;它会自动添加并按数字顺序列出它们。
// Swift
let dataToSave: [String: Any] = ["example": "example"]
collectionRef.document(dateString).setData(dataToSave) { (error) in
}
如果使用“add”方法,密钥会自动生成一个随机的字母数字字符串。
集合按字母数字顺序排列所有内容,因此仅使用数字或字母键设置文档将允许有序列表。
【讨论】: