我在几个月前部署的应用程序中使用Firebase。当然,发生了一些数据库更改,并创建了许多新的触发器,我们现在希望将它们与新的应用程序版本一起部署到生产中。
问题是我们如何在不强迫我们的用户更新旧应用程序的情况下,如何使先前的应用程序版本与新的触发器和数据库结构一起使用?是否有人有任何经验或建议可以顺利实施?
发生了什么变化的一些示例:
在先前版本的应用程序代码中设置了一个用于跟踪相似计数的计数器。现在,它已移至云功能。
一个名为“ / users”的集合现在分为两个集合“ / users”和“ / _users”,其中“ / users”包含所有用户可访问的所有数据,“ / _ users”仅包含所有数据可供管理员访问。此外,还创建了一个触发器来使相应的字段保持同步(例如,字段firstName出现在“ / users”和“ / _users”中),因此在以前的应用程序版本中创建新用户时,文档将包含太多字段,因为有些现在属于'/ _users'集合。如何处理?
我发现,使用远程配置,我们将能够迫使用户更新应用程序,但这仍然不是我们的最佳选择。通过重新计算触发器中的计数,似乎很容易应对第一种情况。第二个似乎更复杂。