def admin(username, password, email): """设置管理员用户名、密码以及邮箱""" # 处理 MySQL 错误 try: admin = Admin.query.first() except Exception as e: if '1146' in str(e.orig): click.echo('数据表不存在,请执行 `flask initdb` 创建数据表') else: print(e) click.echo('请检查错误信息') return with db.auto_commit(): if admin: click.echo('更新管理员账户信息...') admin.username = username admin.password = password admin.email = email else: click.echo('创建管理员账户中...') admin = Admin() admin.username = username admin.password = password admin.email = email admin.blog_title = '临时博客名' admin.blog_subtitle = '临时博客副标题' admin.blog_about = '临时博客关于' admin.nickname = '临时昵称' db.session.add(admin) click.echo('Done.')
def post(self): ''' 添加用户 ''' args_register = parse_register.parse_args() password = args_register.get('password') username = args_register.get('username').lower() name = args_register.get('name') email = args_register.get('email') phone = args_register.get('phone') has_admin = Admin.query.filter_by(username = username,is_del='0').first() if has_admin: abort(RET.Forbidden,msg='管理员已存在') admin = Admin() admin.username = username admin.password = password admin.name = name admin.email = email admin.phone = phone admin.last_editor = g.admin.username if admin.add(): data = { 'status':RET.Created, 'msg':'新增管理员成功', 'data':admin } return marshal(data,sing_user_fields) abort(RET.BadRequest,msg='新增失败')
def fake_admin(cls): """ 生成 admin 表虚拟数据 """ with db.auto_commit(): admin = Admin() admin.username = '******' admin.password = '******' admin.nickname = '临时管理员昵称' admin.blog_title = '临时Blog名' admin.blog_subtitle = '临时Blog副标题' admin.blog_about = FakeData.FAKER.text(1000) admin.email = '*****@*****.**' db.session.add(admin)
def fake_admin(cls): """ 生成 admin 表虚拟数据 :return: None """ with db.auto_commit(): admin = Admin() admin.username = '******' admin.password = '******' admin.nickname = '临时管理员昵称' admin.blog_title = '临时博客名' admin.blog_subtitle = '临时博客副标题' admin.blog_about = FakeData.FAKER.text(1000) # 请务必执行完 `flask fake` 之后,执行 `flask admin` 重设管理员账户,并填入你的真实邮箱 # 否则你将无法收到新评论邮件 admin.email = '*****@*****.**' db.session.add(admin)