Flask-Migrate如何实现数据库迁移管理?
- 内容介绍
- 文章标签
- 相关推荐
本文共计284个文字,预计阅读时间需要2分钟。
使用Flask-Migrate,可以通过model自动创建数据库中的数据表。Flask-Migrate基于Flask-Script构建。
安装:bashpip install Flask-Migrate
使用:pythonfrom flask import Flaskfrom flask_sqlalchemy import SQLAlchemyfrom flask_migrate import Migrate
app=Flask(__name__)app.config['SQLALCHEMY_DATABASE_URI']='sqlite:///example.db'db=SQLAlchemy(app)migrate=Migrate(app, db)
定义模型class User(db.Model): id=db.Column(db.Integer, primary_key=True) name=db.Column(db.String(50))
创建数据库和表db.create_all()
Flask-Migrate
使用Flask-Migrate可以通过model自动创建数据库中的数据表
Flask-Migrate是基于Flask-Script的。
安装
pip install Flask-Migrate
使用到项目中
from flask import Flask from flask_sqlalchemy import SQLAlchemy from flask_script import Manager from flask_migrate import Migrate, MigrateCommand app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = "mysql+pymysql://root:[emailprotected]:3306/mydb?charset=utf8" app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = False db = SQLAlchemy(app) db.init_app(app) # app注册到Manager中支持命令行指令 manager = Manager(app) # Migrate是数据库迁移,那么就得告诉他哪个app,哪个数据库db migrate = Migrate(app, db) # 添加MigrateCommand指令 manager.add_command('db', MigrateCommand) class User(db.Model): __tablename__ = "user" id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(128)) if __name__ == '__main__': manager.run()
数据库迁移指令
数据库迁移指令: python manage.py db init python manage.py db migrate # Django中的 makemigration python manage.py db upgrade # Django中的 migrate
本文共计284个文字,预计阅读时间需要2分钟。
使用Flask-Migrate,可以通过model自动创建数据库中的数据表。Flask-Migrate基于Flask-Script构建。
安装:bashpip install Flask-Migrate
使用:pythonfrom flask import Flaskfrom flask_sqlalchemy import SQLAlchemyfrom flask_migrate import Migrate
app=Flask(__name__)app.config['SQLALCHEMY_DATABASE_URI']='sqlite:///example.db'db=SQLAlchemy(app)migrate=Migrate(app, db)
定义模型class User(db.Model): id=db.Column(db.Integer, primary_key=True) name=db.Column(db.String(50))
创建数据库和表db.create_all()
Flask-Migrate
使用Flask-Migrate可以通过model自动创建数据库中的数据表
Flask-Migrate是基于Flask-Script的。
安装
pip install Flask-Migrate
使用到项目中
from flask import Flask from flask_sqlalchemy import SQLAlchemy from flask_script import Manager from flask_migrate import Migrate, MigrateCommand app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = "mysql+pymysql://root:[emailprotected]:3306/mydb?charset=utf8" app.config["SQLALCHEMY_TRACK_MODIFICATIONS"] = False db = SQLAlchemy(app) db.init_app(app) # app注册到Manager中支持命令行指令 manager = Manager(app) # Migrate是数据库迁移,那么就得告诉他哪个app,哪个数据库db migrate = Migrate(app, db) # 添加MigrateCommand指令 manager.add_command('db', MigrateCommand) class User(db.Model): __tablename__ = "user" id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(128)) if __name__ == '__main__': manager.run()
数据库迁移指令
数据库迁移指令: python manage.py db init python manage.py db migrate # Django中的 makemigration python manage.py db upgrade # Django中的 migrate

