我见过的Flask应用的许多示例都将模型直接存储在主应用文件中(http://pythonhosted.org/Flask-SQLAlchemy/quickstart.html,http://maximebf.com/blog/2012/10/building-websites-in-python-with-flask/)。其他的(http://flask.pocoo.org/docs/patterns/sqlalchemy/)有一个“models.py”文件,其中放置了模型。
如何从单独的文件e.x中获取Flask app导入模型。 “User.py”?当我尝试使用以下内容创建User.py文件时:
from app import db
class User(db.Model):
[...]
我收到以下错误:
File "/Users/stackoverflow/myapp/models/User.py", line 1, in <module>
from app import db
ImportError: No module named app
当我在模块文件中插入from models import User
时。
答案 0 :(得分:23)
这个答案非常有帮助:https://stackoverflow.com/a/9695045/353878。
我不需要立即初始化数据库。
答案 1 :(得分:-1)
from app.database import Base
class User(Base):
__tablename__ = 'users'
不应该这样吗?