2009-04-16 180 views
0

我想使用Elixir的@after_insert修饰器,但我无法访问模型中的会话。由于我将autocommit设置为False,因此我无法在事件处理程序中提交任何更改。有没有最佳做法如何处理?Elixir事件处理程序

我用来构建模型,数据库连接等的代码大多是从文档中取出的。

所需的方法:

class Artefact(Entity): 
[...] 
    @after_insert 
    def make_signature(self): 
     self.signature = '%s-%s' % (self.artefact_type.title.upper()[:3], self.id) 

所有会话初始化在同一目录下初始化的.py完成。

当我随后致电:

Session.update(self) 
Session.commit() 

我得到一个错误,该届会议是不确定的。 有什么想法?

回答

0

您是否导入了Session?

from packagename import Session

在你的模型文件应该做的伎俩的顶部。 Packagename是目录名称。