database - Flutter 应用程序的最佳数据库设置是什么?
问题描述
我正在开发一个带有颤振的应用程序,该应用程序需要访问带有文本/图片的数据库(例如,考虑 2,000 种不同的食物食谱,尽管它不是另一个食谱应用程序)。大约每周一次,食谱需要由应用程序开发人员添加,但从不由用户添加,因此这是一条单行道。
就数据库更新分配给应用程序用户的速度而言,时间要求并不高。更关键的是,用户可以快速浏览食谱。
该应用程序还需要身份验证、通知等。
我真的在努力寻找最好的方法来设置它而不会变得太复杂。我认为最好的设置是在安装或首次启动时将数据库转移到客户端,然后从服务器不断更新。这将最小化流量并保持对数据的(快速)本地访问。
我猜数据库可以与 NoSQL 和 SQL 一起使用,因为它相当简单。
我考虑过将 Firebase/Firestore 用于一切。它的工作方式是使用托管的 NoSQL 数据库,然后在客户端上使用数据库缓存。但是,我读到我无法使用 Firestore 很好地管理缓存 - 例如,我无法在安装时(或者在首次启动时)预填充缓存,我认为这是快速用户体验所必需的.
有没有一种简单的方法可以用 Firebase 解决这个问题?还是其他 BAAS,例如 back4app,更合适?还是我认为这一切都错了,应该完全采用不同的结构?
任何线索都非常感谢!
解决方案
我想这可能会对你有所帮助。
在应用程序启动时,只需将其设置为本地数据库并显示结果。它会很快。
然后,您可以再次将其设置为在线以获取新食谱。
这样,它将快速且更新。
如果您需要更多解释,请在评论中联系我。
推荐阅读
- clang-format - 在哪里可以看到 BasedOnStyle 的实际值?
- mysql - 更新命令拒绝用户插入重复键更新
- c++ - 排序时引用绑定到“value_type”类型的空指针
- mysql - Mysql 5.1 在加入选择结果时不使用索引
- c# - 如何验证 C#/.NET COM 对象实际上是 COM 对象?
- android - 关于使用 recv 系统调用的 ARM 程序集
- c# - 我不能多次使用 LiveCharts 库数据类型属性
- java - 涉及排序参数时,Spring数据JPA实体图无法按预期工作
- python-3.x - 使用 --onefile 选项添加文本文件
- python - Obtain text from a form/field of another application