-1

我正在使用 SQLAlchemy 数据库构建 Flask API。在我的 app.py 文件(主文件)中,我有所有必要的导入和设置,如下所示:

from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
app.config["SQLALCHEMY_DATABASE_URI"] = "sqlite:///data.db"
db = SQLAlchemy(app)

问题是,我想移动这个模型

class User(db.Model):
    id = db.Column(db.integer, primary_key=True)
    username = db.Column(db.String(20))
    password = db.Column(db.String(16))

到一个单独的文件,以保持一切整洁,但它继承自导入,并从

app = Flask(__name__)

,但我不能拥有其中两个,因为应用程序崩溃了。例如,在 javascript 中,可以声明一个需要某些导入的函数,而无需将它们导入同一个文件中,只要该函数导出到满足这些要求的另一个文件即可。但是在python中,它会引发db is not defined错误。知道如何解决这个问题吗?

4

1 回答 1

0

您没有提到用户模型中的表名。它应该是

class User(db.Model):
    __tablename__ = 'user_table_name'
    id = db.Column(db.integer, primary_key=True)
    username = db.Column(db.String(20))
    password = db.Column(db.String(16))

将 user_table_name 替换为 SQLite 数据库中表的实际名称。

于 2020-11-21T22:41:44.893 回答