Pouchdb 面向前向兼容性的数据库设计

Pouchdb 面向前向兼容性的数据库设计,pouchdb,Pouchdb,我从PockDB开始,寻找一个解决方案,它将允许我在未来更改我的模式,而不会带来很大的痛苦,所以如果我已经想到了所有事情,我现在就不必担心了。我正在为可能需要更改为我没有预测到的结构的情况制定计划(例如:假设我从单个“愿望列表”的概念开始,但后来支持多个命名列表) 我的高层次想法是有一些内部有意义的“模式版本”,保存到每个数据库实例中。然后我的客户端JS可以读入,如果需要数据迁移,它可以在继续之前执行。有什么“最佳实践”方法可以做到这一点吗?有一个名为的插件,您可以使用它来实现这一点。保持整数版

我从PockDB开始,寻找一个解决方案,它将允许我在未来更改我的模式,而不会带来很大的痛苦,所以如果我已经想到了所有事情,我现在就不必担心了。我正在为可能需要更改为我没有预测到的结构的情况制定计划(例如:假设我从单个“愿望列表”的概念开始,但后来支持多个命名列表)


我的高层次想法是有一些内部有意义的“模式版本”,保存到每个数据库实例中。然后我的客户端JS可以读入,如果需要数据迁移,它可以在继续之前执行。有什么“最佳实践”方法可以做到这一点吗?

有一个名为的插件,您可以使用它来实现这一点。保持整数版本是可以的;您还可以使用“duck versioning”(例如,“我正在v2中添加一个
lastName
字段,因此如果没有
lastName
,那么文档必须是v1”)。

完美的时机!我看到它刚刚被释放。BTW你会考虑这个“方法”(即假设我不会得到正确的模式第一次,我需要打破兼容性在某个点,并计划它)可以吗?