我最近了解到我们实际上可以设置 FieldValue 来引用文档。但我真正好奇的是,是否也可以引用 Collection 的最后一个文档。
比如说我有一个数据结构,它看起来像这样:
Chat
CHAT_ID
last : (Reference To the Last Document in the "Messages" Collection)
Messages
MSG_ID_001
msg : Some Message
MSG_ID_002
msg : Some Message
MSG_ID_003
msg : Some Message
所以现在我想设置引用,使其始终引用消息集合中的最后一个文档(在本例中为 MSG_ID_003)。
那有可能吗??
答案 0 :(得分:0)
有一个字段引用集合的最后一个字段,并自动更新该引用以使其始终指向最后一个字段,这在 Firestore 中是不可能的。
我建议您在需要时只需进行查询即可获取最后一个文档参考。但是,如果您想这样做,作为一种解决方法,您可以自己更新该字段,并且有以下几种方法:
onCreate
或 onWrite
触发器创建云函数以在每次对集合进行更改时更新引用字段。请注意,这种方法虽然最可靠,但如果您必须经常更新该字段,则可能会非常昂贵。您可以观看 this 视频,该视频解释了 Firestore 中使用的引用字段。