使用 Flask-SQLAlchemy 创建所有表

我对库 lask-sqlalchemy 有一些困难,我尝试使用下面的代码创建我的数据库,我没有错误但没有创建表。


_init.py


from flask import Flask

from flask_cors import CORS


app = Flask(__name__)

CORS(app)


app.config.from_json("C:/Users/lquastana/PycharmProjects/flask_demo/conf/api-config.json")

app.app_context().push()

数据库.py


from flask_sqlalchemy import SQLAlchemy

from api_lab import app

db = SQLAlchemy(app)

成员.py


from api_lab.models.db import db


class Member(db.Model):

    __table_args__ = {"schema": "public"}

    id = db.Column(db.BigInteger,

                   primary_key=True,

                   autoincrement=True)

    id_company = db.Column(db.BigInteger,

                       db.ForeignKey("compagny.id"),

                       index=True,

                       nullable=False)

    nom = db.Column(db.String(80), unique=True, nullable=False)

    age = db.Column(db.Integer, unique=True, nullable=False)


    def __repr__(self):

        return '<Member %r>' % self.nom

run_api.py


from api_lab import app

from api_lab.models.db import db


def main():

    host = app.config["ENV"]["HOST"]

    port = app.config["ENV"]["PORT"]

    debug = app.config["ENV"]["DEBUG"]

    app.run(host=host, port=port, debug= debug)



if __name__ == '__main__':

    db.create_all()

    #main()


哈士奇WWW
浏览 322回答 1
1回答

慕斯王

您应该将所有与初始化相关的逻辑放入init .py 使用 SQLAlchemy 设置与您的 app.config 的数据库连接初始化.pyfrom api_lab import appfrom api_lab.models.db import dbfrom flask_sqlalchemy import SQLAlchemyapp.config.from_json("C:/Users/lquastana/PycharmProjects/flask_demo/conf/api-config.json")&nbsp; &nbsp; app.app_context().push()&nbsp; &nbsp; db = SQLAlchemy(app)&nbsp; &nbsp; # initialize the DB&nbsp; &nbsp; db.create_all()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python