我正在使用SQLAlchemy,我可以创建我在/model/__init__.py中定义的表,但我已经在/ model目录中的其他文件中定义了我的类,表和它们的映射。
例如,我有一个配置文件类和一个配置文件表,它们在/model/profile.py中定义和映射
要创建我运行的表:
paster setup-app development.ini
但我的问题是我在/model/__init__.py中定义的表是正确创建的,但是未创建/model/profile.py中的表定义。如何执行/model/profile.py中的表定义,以便可以创建所有表?
感谢您的帮助!
答案 0 :(得分:5)
我的第一个真正的Pylons项目遇到了同样的问题。对我有用的解决方案是:
__init__.py
from profile import *
添加def init_model
此外,我已经使用声明性方法创建了项目,并且不需要在init文件中定义映射。
答案 1 :(得分:0)
只需在 init .py中导入其他表的模块,然后在models.meta中使用其他文件中的元数据对象。 Pylons默认setup_app函数在导入后从model.meta创建元数据对象中找到的所有表。
答案 2 :(得分:0)
如果您使用的是声明式样式,请务必使用Base.meta生成表格。