-
应用场景
当我们搭建一套系统,必须存在一个root管理员以用来管理其他用户,此时有2种方法:1是手动在数据库里添加一条管理员信息,可以通过图形化界面或sql语句实现,2是通过cli -
cli实现
import click
# 将一系列子命令加组,拼接可选option
@click.group()
def cli():
pass
@cli.command('initadmin', help='create system user')
@click.option('--username', help='system user name')
def create(**kwargs):
# 在数据库里插入数据
pass
当在命令行输入:bin/netctl initadmin --username=root --password=abc
会调用create方法在数据库生成一条数据,同理创建数据库
通过cli命令创建数据库数据
- 前提是数据库里先创建了xxx 数据库
- 进入xxx代码的目录下(docker里也一样)进入bin下
- bin下有个py文件专门用来调用cli
- 想建立的数据库名字在最后
- ip对应想建立数据库的主机
python bin/xxx admin createdb --db-url='mysql+pymysql://root:root@1.11.1.1:3306/xxx'