我最近了解到,我们实际上可以设置fieldvalue来引用文档。但我真正好奇的是,是否也可以参考收藏的最后一份文件。
例如,我有一个如下所示的数据结构:
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)。
那么有可能吗??
1条答案
按热度按时间nfg76nw01#
在firestore中,不可能让字段引用集合的最后一个字段,并自动更新该引用,使其始终指向最后一个字段。
我建议您在需要时进行查询以获取最后一个文档引用。但是,如果您想这样做,作为一种解决方法,您可以自己更新字段,有几种方法:
每次向要使用更新查询引用的集合添加新字段时,都会从代码中更新该字段。
使用
onCreate
或onWrite
每次更改集合时更新引用字段的触发器。请注意,这种方法虽然是最可靠的,但如果您必须频繁更新该字段,它可能会非常昂贵。您可以看一看这段视频,它解释了firestore中使用的参考字段。