博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Flask最强攻略 - 跟DragonFire学Flask - 第十六篇 Flask-Migrate
阅读量:5173 次
发布时间:2019-06-13

本文共 1472 字,大约阅读时间需要 4 分钟。

终于到了Flask-Migrate,之前在学习Flask-SQLAlchemy的时候,有的同学就提过类似的问题,Flask支持 makemigration / migrate 吗?

答案在这里该诉你,如果你同时拥有两个三方组件 Flask-Script 和 Flask-Migrate 那么就支持这样的动作

首先你要有几个准备工作

废话不多说,直接进入正题

1.安装 Flask-Migrate

pip install Flask-Migrate

2.将 Flask-Migrate 加入到 Flask 项目中 - PS: 注意了 Flask-Migrate 是要依赖 Flask-Script 组件的

1 import MyApp 2 # 导入 Flask-Script 中的 Manager 3 from flask_script import Manager 4  5 # 导入 Flask-Migrate 中的 Migrate 和 MigrateCommand 6 # 这两个东西说白了就是想在 Flask-Script 中添加几个命令和指令而已 7 from flask_migrate import Migrate,MigrateCommand 8  9 app = MyApp.create_app()10 # 让app支持 Manager11 manager = Manager(app) # type:Manager12 13 # Migrate 既然是数据库迁移,那么就得告诉他数据库在哪里14 # 并且告诉他要支持那个app15 Migrate(app,MyApp.db)16 # 现在就要告诉manager 有新的指令了,这个新指令在MigrateCommand 中存着呢17 manager.add_command("db",MigrateCommand) # 当你的命令中出现 db 指令,则去MigrateCommand中寻找对应关系18 """19 数据库迁移指令:20 python manager.py db init 21 python manager.py db migrate   # Django中的 makemigration22 python manager.py db upgrade  # Django中的 migrate23 """24 25 26 @manager.command27 def DragonFire(arg):28     print(arg)29 30 @manager.option("-n","--name",dest="name")31 @manager.option("-s","--say",dest="say")32 def talk(name,say):33     print(f"{name}你可真{say}")34 35 if __name__ == '__main__':36     #app.run()37     # 替换原有的app.run(),然后大功告成了38     manager.run()
MyApp/manager.py

3.执行数据库初始化指令

python manager.py db init

此时你会发现你的项目目录中出现了一个好玩儿的东西

接下来的操作就和Django中一样了,在这里就不做演示了

本章结束

 

转载于:https://www.cnblogs.com/DragonFire/p/10365963.html

你可能感兴趣的文章
input与select 设置相同宽高,在浏览器上却显示不一致,不整齐
查看>>
NUGET常用命令
查看>>
CentOs下Apache+Python+Django+mod_wsgi环境搭建
查看>>
java基础知识总结(3)
查看>>
spark配置
查看>>
数据仓库 - 3.数据仓库基本概念
查看>>
自定义树莓派的显示分辨率
查看>>
sql full left right inner cross 基础
查看>>
SpringBoot + Mybaties的逆向工程有数据库生成domain的过程
查看>>
Android控件TextView之跑马灯功能问题记录
查看>>
国外漂亮质感网页设计作品欣赏 转
查看>>
SVN学习总结
查看>>
cognos安装 win7+Sqlserver08SP1
查看>>
Java的21个技术点和知识点归纳
查看>>
安卓中Paint类和Canvas类的方法汇总
查看>>
提供openssl -aes-256-cbc兼容加密/解密的简单python函数
查看>>
数据结构-表
查看>>
【转载】下一代Web应用模型:Progressive Web App
查看>>
gridControl 部分属性
查看>>
Csharp: read Sybase SQL anywhere5.5 using c#
查看>>