我有以下app结构。 IDE工作正常,解析,但运行一些脚本给我
File "/home/sink/TARET/app/models.py", line 4, in <module>
from app import db
ImportError: No module named app
错误。我将模块称为:
import datetime
from app import db
class Role(db.Model):
__tablename__ = 'role'
RoleID = db.Column(db.Integer, primary_key=True)
Name = db.Column(db.String(80), unique=True)
ModifiedDate = db.Column(db.DATETIME) and so on
python中模块的正确用法是什么? 我有以下结构。
好的编辑:
db在 init .py中定义为
app = Flask(__name__)
app.debug = True
app.config.from_object('config')
db = SQLAlchemy(app)
答案 0 :(得分:1)
在app / __ init__.py的底部放置:
from app import models
<强>为什么吗
来自http://flask.pocoo.org/docs/patterns/packages/
循环进口
每个Python程序员都讨厌它们,但我们只是添加了一些: 循环导入(这是两个模块相互依赖的时候 这种情况views.py取决于__init__.py)。请注意,这是一个 一般来说不好的主意但这里实际上很好。原因就在于此 是我们实际上并没有使用__init__.py中的视图 确保模块已导入,我们在底部执行此操作 文件。