flask-sqlalchemy:导入模型出错

库尔特涅

我正在用Flask和Sqlalchemy构建一个应用程序。我的app.py文件开始如下:

from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
app = Flask(__name__)
db = SQLAlchemy(app)
from models import User

models.py的样子是这样的:

from app import db
class User
....

所以当我运行时python app.py,出现错误消息“无法导入用户名”。我猜某处有一个循环导入,我不知道如何解决它。

但是如果我run.py

from app import app
app.run()

一切正常。但是,为什么这会中断循环导入?我听不懂

塞莱奥

您做对了:这是一个循环导入问题。

解决这个问题的方法是shared.py在根目录中有另一个文件在该文件中,创建数据库对象,

from flask.ext.sqlalchemy import SQLAlchemy
db = SQLAlchemy()

在中app/init.py,不要创建新的db对象。相反,做

from shared import db
db.init_app(app)

在您想使用db对象的任何地方,包括您的模型文件,都可以从中导入它shared.py

from shared import db
# do stuff with db

这样,共享文件中的对象将使用应用程序上下文进行初始化,并且没有循环导入的机会。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

带db模型的循环导入的flask sqlalchemy

来自分类Dev

从flask_sqlalchemy导入UniqueConstraint

来自分类Dev

flask_sqlalchemy的未解决的导入

来自分类Dev

Flask-SQLAlchemy抽象基础模型

来自分类Dev

Flask-我无法从flask_app导入用户模型

来自分类Dev

将Flask-SQLAlchemy中的模型分离到另一个文件会中断PyDev导入检测

来自分类Dev

将Flask-SQLAlchemy中的模型分离到另一个文件会中断PyDev导入检测

来自分类Dev

将Flask SQLAlchemy模型与常规SQLAlchemy结合使用

来自分类Dev

无法安装flask_sqlalchemy->导入错误:没有名为flask_sqlalchemy的模块

来自分类Dev

我应该导入flask.ext.sqlalchemy或flask_sqlalchemy吗?

来自分类Dev

使用sqlalchemy_utils ChoiceType在Flask中迁移时出错

来自分类Dev

Flask SQLAlchemy关联表:创建反向引用时出错

来自分类Dev

将SQLAlchemy表导入没有Flask的熊猫数据框

来自分类Dev

Flask-SQLAlchemy-模型没有属性“ foreign_keys”

来自分类Dev

将“外部”类模型与flask sqlalchemy相关联

来自分类Dev

从flask-sqlalchemy数据库获取所有模型

来自分类Dev

如何返回多个模型/表flask-sqlalchemy?

来自分类Dev

Flask:使用带有关系的SQLalchemy模型填充WTform

来自分类Dev

Flask-SQLAlchemy筛选与父模型的多对多关系

来自分类Dev

在Flask sqlalchemy中订购一对多模型?

来自分类Dev

在flask-sqlalchemy中无法检索包含多个单词的模型

来自分类Dev

使用 Flask-Sqlalchemy 从某个模型创建各种表

来自分类Dev

Flask SQLAlchemy分页错误

来自分类Dev

Flask SQLAlchemy关系

来自分类Dev

Flask-SQLAlchemy TimeoutError

来自分类Dev

Flask/SQLAlchemy Insert Into Database

来自分类Dev

Flask + SqlAlchemy ALTER表

来自分类Dev

Flask SQLAlchemy关系

来自分类Dev

无法安装Flask SQLAlchemy

Related 相关文章

热门标签

归档