0

我想使用 Elixir 的 @after_insert 装饰器,但我无法访问模型中的 Session。由于我将自动提交设置为 False,因此我无法在事件处理程序中提交任何更改。有没有最佳实践来处理这个问题?

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

所需的方法:

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

所有 Session 初始化都在同一目录中的init .py 中完成。

当我然后打电话时:

Session.update(self)
Session.commit()

我收到 Session 未定义的错误。任何的想法?

4

1 回答 1

0

你导入了Session吗?

from packagename import Session

在模型文件的顶部应该可以解决问题。Packagename 是目录名称。

于 2009-04-17T10:28:56.457 回答