【发布时间】:2019-10-12 18:37:07
【问题描述】:
我有一个 python 脚本 app.py 使用 Flask 和 SQLAlchemy 来制作一个 Web 应用程序。
我在 app.py 脚本中有一个表格
class NutritionConsumed(db.Model):
__tablename__ = 'nutritionconsumed'
id = db.Column(db.Integer, primary_key=True)
date = db.Column(db.DateTime, nullable=False )
item = db.Column(db.String(200), nullable=False)
在同一个文件夹中,我有我的 sqlite 数据库“test.db”。在浏览器中运行一切正常,我可以读取和显示表格中的数据。
但是,如何在 Python shell 终端中访问该数据库?
在与我的 Web 应用所在的同一目录中启动 python 时,如果我运行
>>> nutritionconsumed.query.all()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'nutritionconsumed' is not defined
但在我的 test.db 中,我确实有一个营养消耗表。
【问题讨论】:
-
这与数据库无关。这是基本的 Python:如果你想访问一个类,你需要导入它 - 并使用你定义的名称,即
NutritionConsumed而不是nutritionconsumed -
错误说明了一切。
nutritionconsumed is not defined表示变量nutritionconsumed不存在。
标签: python flask terminal sqlalchemy