2009-04-16 255 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是目錄名稱。