2017-08-28 70 views
0

因此在Flask中我有models.py其中包含我所有的模型定义。我想在models目录下将其分成多个模型文件。如何让Flambsk从Flask中的多个模型文件中识别模型

我已经通过添加一些模型文件(如models/user_model.py,models/booking_model.py等)给出了这个尝试,但是alembic似乎没有检测到这些文件中的模型。

与瓶标准alembic.ini我:

# A generic, single database configuration. 
 

 
[alembic] 
 
# template used to generate migration files 
 
# file_template = %%(rev)s_%%(slug)s 
 

 
# set to 'true' to run the environment during 
 
# the 'revision' command, regardless of autogenerate 
 
# revision_environment = false 
 

 

 
# Logging configuration 
 
[loggers] 
 
keys = root,sqlalchemy,alembic 
 

 
[handlers] 
 
keys = console 
 

 
[formatters] 
 
keys = generic 
 

 
[logger_root] 
 
level = WARN 
 
handlers = console 
 
qualname = 
 

 
[logger_sqlalchemy] 
 
level = WARN 
 
handlers = 
 
qualname = sqlalchemy.engine 
 

 
[logger_alembic] 
 
level = INFO 
 
handlers = 
 
qualname = alembic 
 

 
[handler_console] 
 
class = StreamHandler 
 
args = (sys.stderr,) 
 
level = NOTSET 
 
formatter = generic 
 

 
[formatter_generic] 
 
format = %(levelname)-5.5s [%(name)s] %(message)s 
 
datefmt = %H:%M:%S

我是否需要添加的东西在这里得到蒸馏器识别模型?

回答

1

你需要编辑env.py:

# add your model's MetaData object here 
# for 'autogenerate' support 
from your_cool_app.models import * 
target_metadata = db.Model.metadata 
+0

但我有一个像'应用程序/模型/ user_model.py','应用程序/模型/ booking_model.py'几个模型文件。请问这意味着我必须做的是这样的:从app.models.user_model导入用户 从app.models.booking_model进口的预订 target_metadata = db.Model.metadata –

+0

是的,你可以全部导入 –

相关问题