Python 无法在Flask应用程序上下文中的交互式终端中导入数据库模型
我试图测试我的数据库在多对多关系中的行为。我正在努力访问Flask应用程序的应用程序上下文 我在应用程序的父文件夹中运行Python终端,并遵循SO和其他地方的步骤。我可以管理(我认为)导入应用程序,创建它,推送上下文,导入数据库。但是,每当我想要导入模型时,系统都会提示我:Python 无法在Flask应用程序上下文中的交互式终端中导入数据库模型,python,Python,我试图测试我的数据库在多对多关系中的行为。我正在努力访问Flask应用程序的应用程序上下文 我在应用程序的父文件夹中运行Python终端,并遵循SO和其他地方的步骤。我可以管理(我认为)导入应用程序,创建它,推送上下文,导入数据库。但是,每当我想要导入模型时,系统都会提示我: Error ModuleNotFoundError:没有名为“db”的模块 尽管db是明确定义的: 这是完整过程的屏幕截图 文件夹结构为: - app --__int__.py 这是app/init.py文件: fr
Error ModuleNotFoundError:没有名为“db”的模块
尽管db是明确定义的:
这是完整过程的屏幕截图
文件夹结构为:
- app
--__int__.py
这是app/init.py文件:
from flask import Flask,Blueprint
from flask_sqlalchemy import SQLAlchemy
from app.config import Config
from mailjet_rest import Client
db = SQLAlchemy()
mailjet = Client(auth=(Config.MJ_APIKEY_PUBLIC, Config.MJ_APIKEY_PRIVATE), version='v3.1')
def create_app(config_class=Config):
app = Flask(__name__)
app.config.from_object(Config)
db.init_app(app)
from app.views.users import users
from app.views.data import data
from app.views.admin import admin
app.register_blueprint(users,url_prefix='/users')
app.register_blueprint(data,url_prefix='/data')
app.register_blueprint(admin,url_prefix='/admin')
# with app.app_context():
# db.create_all()
return app
如果您有任何意见,我将不胜感激
谢谢,,
Matija解决方案非常简单。我应该从
app.models
导入模型,而不是从db导入
我采取的步骤:
您使用的是哪个python版本?@umairmu是版本if 3.7好的,您使用的是哪个数据库和模块名?它是SQLite。模型在app/Models.py中定义,而配置在app/config.py@umairmube中