用于在烧瓶webapp的SQLAlchemy模型上创建锁的模式是什么?

时间:2015-04-16 06:52:08

标签: python flask redis sqlalchemy locking

我有几个模型应该一次只能由一个人编辑。使用this repository中的信息,它看起来像创建了一个名为lock" object"。

dlm = Redlock([{"host": "localhost", "port": 6379, "db": 0}, ])

my_lock = dlm.lock("my_resource_name",1000)

...

dlm.unlock(my_lock)

但是在我的webapp中,我如何跟踪这些锁定对象?我曾希望用userid_modelname_modelid创建一个唯一的字符串,并创建名为lock的默认ttl约为20分钟。当用户提交数据库更新(或取消修改)时,将重新创建字符串名称并用于解锁模型。

涉及签出模型的路线将具有执行该功能的装饰功能

@modelcheckout(current_user, 'region', regionid)
@myblueprint.route('/editregion/<regionid>', methods=['GET', 'POST])
...

***没有Flask-SQLAlchemy

0 个答案:

没有答案