【发布时间】:2013-06-04 11:45:54
【问题描述】:
我使用 sqlalchemy 挂钩来检查用户对某些操作的权限(例如查询或将数据插入数据库)。
为了防止保存无法访问的记录,我设置了钩子 before_commit,它获取了一个会话对象。我想获取所有实例,应该由这个提交来检查这个实例是否被保存(并删除错误的记录)。
对于添加新记录,它通过 after_attach 和 before_commit 起作用(由于某种原因,在 after_attach 内部删除不起作用)。但是如果 query->update->commit of instances after_attach 没有被调用,所以所有的权限检查都应该移到 before_commit 中。
【问题讨论】:
标签: events session orm permissions sqlalchemy