我们有一个相当简单的基于 Django 的网站来进行 CRUD 操作。我一直在本地进行测试和开发,然后在测试完成后将版本和数据库架构更改检查到实时服务器上。我们最近在发布某些类型的更改时遇到了问题。想象以下事件序列:
- 用户打开 Web 表单
- 网站已更新以要求此表单上的新字段
- 用户提交他们一直在处理的表单
- 服务器返回错误,因为它希望接收在步骤 2 中添加的新字段
其他网站如何处理此类问题?我的想法:
- 在进行更新时使站点脱机。这并不能真正解决问题,因为用户在提交之前可能会无限期地打开 Web 表单,但是在一定时间之后,任何人都不太可能提交表单。
- 在非常低的流量时间进行自动更新。同样,这并不能真正解决问题,但我们的网站并不那么受欢迎,如果我们在凌晨 3:00 进行更新,我怀疑会有很多用户。这种技术的一个问题是自动更新失败。
- 对表单进行版本控制,以便服务器识别正在提交的旧表单并提供对用户更友好的响应。是否有自动化工具可以帮助解决这个问题?
想法?