Flask-Migrate和Flask-Script模块的使用

一.flask-migrate
1.功能
flask—migrate是flask的一个扩展模块,主要是扩展数据库表结构的。
2.安装
切换到自己的解释其环境,执行下面命令即可安装
pip install flask-migrate

二.flask-script
1.功能

            flask-script作用:可以通过命令行的形式来操作flask,例如通过命令跑一个开发版本的服务器,设置数据库,定时任务等

2.常用方法
这些都是在shell里执行的。(一般我们常用前三个用法)。这里的manager.py不是一成不变的,需要根据你的文件名称而定。这里就和数据库连接起来了

开启数据库

     systemctl    start     mariadb

初始化数据库,会创建一个migations文件夹,并且会在数据库生成一个alembic_version表
执行命令

     python3   manager.py     db  init

这里我用的是python3解释器
在这里插入图片描述

三.数据库的创建及其特性
在这里插入图片描述
这里代码第4行中
root westos 是我的电脑的用户名和密码 localhost代表本机
Student1代表数据库名称,必须是已经存在的数据库,数据库第一个字母要大写
__tablename__是强调生成数据库表的名称,此处为students1;如果不强调,默认是类名称,为student
db.create_all( )意为生成数据库
添加内容u1
在数据库中我们可以看到表的三个属性
在这里插入图片描述
表的内容如下
在这里插入图片描述
如果要给表添加另一种属性比如 sss
则在代码添加

  sss=db.Column(db.String(50) )

再次执行代码
之后执行下面名为script.py的代码
在这里插入图片描述

建立一个仓库
此代码是同步补充属性代码
在shell里完成更新

  python3   scripts.py     db     init
  python3   scripts.py    migrate -m  "sss"
  python3   scripts.py    upgrade    

这是数据库的迁移和更新操作

python3     script.py      downgrade  base   返回最开始状态

出现如下图内容即为更新成功
在这里插入图片描述
出现一个文件
在这里插入图片描述
然后我们在数据库中查看
在这里插入图片描述

4.多种方式实现命令行管理命令
代码如下
在这里插入图片描述
在这里插入图片描述返回结果如下
在这里插入图片描述在shell里执行命令检测,此代码文件名为flask1.py
在这里插入图片描述
在这里插入图片描述
如果不给密码的话,默认密码为None

5.命令行管理数据库
代码如下
在这里插入图片描述在这里插入图片描述返回如下
在这里插入图片描述这里我们看到多了showuser 和 add__role函数
检测
这里我又创建了westos用户
在这里插入图片描述在这里插入图片描述注意:此处的类名必须和表名相同,即表名默认为类名才可以,否则报错
执行

         python3      script.py       showuser   时

会显示student1 和 student2 ,表明有两个用户

猜你喜欢

转载自blog.csdn.net/weixin_42719822/article/details/83589678