我想使用Elixir的@after_insert装饰器,但我无法访问模型中的Session。由于我将autocommit设置为False,因此我无法在事件处理程序中提交任何更改。有没有最佳实践如何处理?
我用来建立模型,数据库连接等的代码大部分都是从文档中删除的。
理想的方法:
class Artefact(Entity):
[...]
@after_insert
def make_signature(self):
self.signature = '%s-%s' % (self.artefact_type.title.upper()[:3], self.id)
所有会话初始化都在同一目录中的 init .py中完成。
当我打电话时:
Session.update(self)
Session.commit()
我收到一个错误,即Session未定义。 有什么想法吗?
答案 0 :(得分:0)
您是否导入了会话?
from packagename import Session
应该可以解决问题。 Packagename是目录名。