假设我有一个 Web 应用程序(在服务器端使用 Django),并且我希望其中一个用户(类似管理员的用户"A")能够加载某个视图(网页),她可以在其中修改数据库表将阻止其他用户访问数据库(以及与修改数据库相关的视图),直到用户A完成(按下页面上的某个按钮)。我正在使用 MySQL 和 SQLite(用于开发)。这是我的问题。
MySQL 锁定表机制在 MySQL 服务器级别而不是 Web 服务器级别上工作。由于应用服务器 (Django) 端只有一个 MySQL 用户与 MySQL 服务器关联(即所有应用程序用户在 MySQL 端都将具有相同的用户),因此该机制在这里无关紧要。我对么?
如果 1. 以上是正确的,那么创建这样一个锁的正确方法是什么?好吧,可以创建一个单独的表“lock_table”,它只有一个布尔条目,每个视图都会轮询它,如果它被设置 - 重定向到“db临时锁定”视图。但是,我不确定这是一个好方法。如果您知道,请告知如何实施它。
谢谢。