首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >自动setup_schema在ColanderAlchemy+Pyramid中的应用

自动setup_schema在ColanderAlchemy+Pyramid中的应用
EN

Stack Overflow用户
提问于 2015-04-05 05:50:01
回答 2查看 101关注 0票数 2

医生说把这个放在什么地方:

代码语言:javascript
复制
from sqlalchemy import event
from colanderalchemy import setup_schema
event.listen(mapper, 'mapper_configured', setup_schema)

这个在金字塔里该去哪里?我应该使用金字塔事件而不是SQLAlchemy的吗?

当我尝试将它放在models.py文件的顶部时,它抱怨mapper不存在;我应该继续使用它吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-05 06:01:46

您需要使用SQLAlchemy事件,因为它们告诉SQLAlchemy内部正在发生什么(它们根本与金字塔事件无关)。

ColanderAlchemy的文档是令人困惑的;这里他们为mapper调用的是您的模型类(它不是映射器)。

因此,在您的模型中,您应该这样做:

代码语言:javascript
复制
class MyModelClass(Base):
    ...

event.listen(
    MyModelClass,
    "mapper_configured",
    setup_schema)
票数 1
EN

Stack Overflow用户

发布于 2015-04-06 15:54:23

测试套件显示它是这样工作的:

代码语言:javascript
复制
from sqlalchemy import event
from colanderalchemy import setup_schema
from sqlalchemy.orm import mapper

event.listen(mapper, 'mapper_configured', setup_schema)

请让我知道,如果它为您修复,我可以去更新相应的文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29454544

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档