python - flask_sqlalchemy 导入错误:文件“",第 1 行,在无法从“app”导入名称“db”
问题描述
大家好,我是使用 Python 和烧瓶的初学者。我正在尝试使用 SQLAlchemy 导入我的数据库。
正如您在我的 app.py 文件中看到的那样,我已经配置了位置、创建了数据库并创建了模型:
from flask import Flask, render_template
from flask_sqlalchemy import SQLAlchemy
from datetime import datetime
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///anomalies.db'
db = SQLAlchemy(app)
class Anomalie (db.Model):
id = db.Column(db.Integer, primary_key=True)
type_anomalie = db.Column(db.String(100), nullable=False)
date_anomalie = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
image_anomalie = db.Column(db.String(100), nullable=False)
name_product = db.Column(db.String, nullable=False)
id_product = db.Column(db.Integer, nullable=False)
def __repr__ (self):
return 'anomalies ' + str(self.id)
@app.route('/anomalies')
def anomalies():
return render_template('anomalies.html', anomalies=all_anomalies)
if __name__ == '__main__':
app.run(debug=True) # with this we can debug
问题是当我尝试使用来自 app import db的以下命令从 app.py 导入数据库时:
Windows PowerShell
Copyright (C) 2015 Microsoft Corporation. Todos los derechos reservados.
PS C:\Users\USER\FlaskProjects\flaskdemo> python
Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:20:19) [MSC v.1925 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> from app import db
出现此消息
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name 'db' from 'app' (C:\Users\USER\FlaskProjects\flaskdemo\app.py)
>>>
我使用 Visual Studio Code 作为编辑器。我已经尝试解决这个问题好几个小时了,但我不知道我是否遗漏了什么。
谢谢你的帮助
这是我的项目的结构
解决方案
推荐阅读
- html - 如何解决背景图像未在 CSS 中显示的问题
- xaml - Xamarin XAML 预览器设计数据绑定
- android - 如何在Android中的元素开头从ArrayList中删除空间
- php - 将多个系统登录合并为 1
- java - 在java中解析JSON数组时,JSONArray初始值应该是字符串或集合或数组
- python - Python 3 模块:用户可配置的相对目录?
- android - 在后台每秒钟检查一次房间数据库表并显示通知
- mysql - SQL查询获取协议列表
- python - 使用 Python 请求发送表单的方式与 Perl LWP::UserAgent 的方式相同
- python - 如何覆盖烧瓶表类