1、Flask-Script介绍
Flask-Script的作用是可以通过命令行的形式来操作Flask。
Flask Script扩展提供向Flask插入外部脚本的功能,包括运行一个开发用的服务器,一个定制的Python shell,设
置数据库的脚本,cronjobs,及其他运行在web应用之外的命令行任务;使得脚本和系统分开;

pip install flask-script 安装

2、Flask-Script基本使用

在一个在flask项目中,新建一个新的test_command.py,其中的test_command功能函数我们希望通过命令来运行

from flask_script import Manager
from shopping.main import app # 第一步:初始化
manager = Manager(app) # 第二步:通过命令执行
@manager.command
def hello():
print('命令执行成功') if __name__ == '__main__':
# 第三步:启动
manager.run()

在命令中执行

3.Flask-Script案例

需求:通过命令直接在数据库中创建一个用户

建立:数据库连接配置config.py文件

HOSTNAME = '127.0.0.1'
PORT = '3306'
DATABASE = 'test2'
USERNAME = 'root'
PASSWORD = 'root'
DB_URI = 'mysql+pymysql://{}:{}@{}:{}/{}?charset=utf8mb4'.format(USERNAME, PASSWORD, HOSTNAME, PORT, DATABASE) SQLALCHEMY_DATABASE_URI = DB_URI
SQLALCHEMY_TRACK_MODIFICATIONS = False

主程序app.py

from flask_script import Manager
import app #此处是导入从已经建立好的app对象文件
from flask_sqlalchemy import SQLAlchemy
import config #导入配置文件config.py app.config.from_object(config)
db = SQLAlchemy(app) manager = Manager(app) class User(db.Model):
__tablename__ = 't_user'
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
uname = db.Column(db.String(50), nullable=False)
pwd = db.Column(db.String(50), nullable=False) @manager.option('-u', '--username', dest='uname')
@manager.option('-p', '--password', dest='pwd')
def create_user(uname, pwd):
user = User(uname=uname, pwd=pwd)
db.session.add(user)
db.session.commit()
   print('添加成功') if __name__ == '__main__':
manager.run()

在命令中执行

flask-script的简单使用的更多相关文章

  1. shell script 的简单介绍

    一 什么叫shell script (程序化脚本)? shell script 是利用 shell 的功能所写的一个 “程序”(program),这个程序是使用纯文本文件,将一些 shell 的语法与 ...

  2. shell script的简单使用

    shell script的简单介绍 shell变量 1.命名规则 命名只能使用英文字母,数字和下划线,首个字符不能以数字开头 中间不能有空格,可以使用下划线(_) 不能使用标点符号. 不能使用bash ...

  3. flask+script命令行交互工具

    Project name :Flask_Plan templates:templates static:static 首先说,我们flask比django方便的地方是所有的模块都可以自己选,你不喜欢s ...

  4. Flask学习之旅--用 Python + Flask 制作一个简单的验证码系统

    一.写在前面 现在无论大大小小的网站,基本上都会使用验证码,登录的时候要验证,下载的时候要验证,而使用的验证码也从那些简简单单的字符图形验证码“进化”成了需要进行图文识别的验证码.需要拖动滑块的滑动验 ...

  5. Flask web开发 简单介绍

    Flask是一个基于python的轻量级web框架.当安装好后Flask后 (pip install flask),就可以开始使用了. 一.最简单的例子 1.新建目录,作为web应用的目录,如: mk ...

  6. flask蓝图的简单使用

    1.flask的简单使用 from flask import Flask # from flask import make_response app = Flask(__name__) app.con ...

  7. linux下Flask框架搭建简单网页

    开始安装FLASK需要创建一个虚拟环境,虚拟环境可以不干扰正在使用的系统环境,避免影响,并且也不需要完全的root权限,更加安全可靠. 搭建环境 Python3.4 进入到microblog目录下创建 ...

  8. Python框架学习之用Flask创建一个简单项目

    在前面一篇讲了如何创建一个虚拟环境,今天这一篇就来说说如何创建一个简单的Flask项目.关于Flask的具体介绍就不详细叙述了,我们只要知道它非常简洁.灵活和扩展性强就够了.它不像Django那样集成 ...

  9. Flask script 内的Shell 类 使用

    1.集成Python shell 每次自动shell会话都要导入数据库实例和模型,很烦人.为了避免一直重复导入,我们可以做些配置让Flask-Script的Shell命令自动导入特定的对象.若想把对象 ...

  10. Flask Restful服务简单实现

    官网:http://flask.pocoo.org/docs/1.0/quickstart/#routing 1.安装 windows下:pip3 install Flask 具体参照:windows ...

随机推荐

  1. .Net Core WebApi AutoFac用法

    1. 安装Autofac.Extensions.DependencyInjection管理包 UI层安装 2.在Program里面配置服务提供工厂 3.在Startup里面添加一个配置容器的方法 使用 ...

  2. vue IE9兼容flex布局 css3(转载)

    原文 https://blog.csdn.net/shihezhengshz/article/details/118860562 写这文章的时候的我,心力憔悴鸭,找了好长时间,呜呜┭┮﹏┭┮ 好了,开 ...

  3. 删除v-for方法生成的组件的方法

    一.思路 在vue:data中的数据对象添加布尔类型的属性,用来表明其是否被渲染,如果需要删除组件,就把这个属性设置为false: 在计算属性vue:computed中,根据该布尔属性过滤,生成一个新 ...

  4. SAP物料状态

    物料状态控制当前物料是否可以生产.采购.设计等功能 设置路径:spro-->后勤常规-->物料主数据-->设置关键字段-->定义物料状态

  5. springboot配置文件中的基本配置

    #应用启动端口设置server.port=9088#=================================微信相关====================================# ...

  6. DCU-GPU

  7. centos7 python设置虚拟环境

    virtualenv 是一个可以在同一计算机中隔离多个python版本的工具.有时,两个不同的项目可能需要不同版本的python,如 python2.6.6 / python3.0 ,但是如果都装到一 ...

  8. .net基础—多线程(二)

    Thread 在.NET中最早提供的控制线程类型的类型:System.Threading.Thread类.使用该类型可以直观地创建.控制和结束线程.下面是一个简单的多线程程序: static void ...

  9. Oracle 临时表空间暴满的原因与解决方法

    Oracle临时表空间主要用来做查询和存放一些缓冲区数据.临时表空间消耗的主要原因是需要对查询的中间结果进行排序. 重启数据库可以释放临时表空间,如果不能重启实例,而一直保持问题sql语句的执行,te ...

  10. variadic templates (数量不定的模板参数)

    void print() {} // 当只剩下一个参数时,args为空,执行这个版本的print template<typename T, typename... Types> void ...