flask系列五之flask_script
1.一个简单的例子
在工程里面新建一个Python文件命名为manage.py
(1)安装flask_script包,然后引入
from flask_script import Manager
from main import app manager = Manager(app) @manager.command
def runserver():
print '服务器跑起来了!!!' if __name__ == '__main__':
manager.run()
在命令行里面输入:
python manage.py runserver
2.Flask-Script的manage分为主manage文件和分manage文件
主manage文件
manage.py:
from flask_script import Manager
from main import app
from db_manage import DBManager manager = Manager(app) @manager.command
def runserver():
print '服务器跑起来了!!!' # 引入其他分manage的命令
manager.add_command('db',DBManager) # 这里的‘db’在命令行操作时,是有用的 if __name__ == '__main__':
manager.run()
分manage文件(数据库manage或其他分类)
db_manage.py
from flask_script import Manager DBManager = Manager() @DBManager.command
def init():
print '数据库初始化完成' @DBManager.command
def migrate():
print '数据表迁移成功'
在命令行下:
(1)初始化文件
python manage.py db init
(2)生成迁移文件
python manage.py db migrate
(3)扩展:将迁移文件映射到数据库
python manage.py db upgrade----映射到数据库
若是第一次生成则需要按顺序执行上述(1)-(2)-(3)步骤
若只是增加字段,只需在model中添加字段然后按顺序执行上述的(2)--(3)命令即可更新数据库的字段。
还有注意要需要将model映射到数据库,需要把具体的类引入到manage.py中,然后才执行命令。例如需要将User映射到数据库,代码如下:
from models import User
然后执行上述的(1)-(2)-(3)命令。
flask系列五之flask_script的更多相关文章
- Flask系列(五)Flask实现分页
一.flask分页组件 from urllib.parse import urlencode,quote,unquote class Pagination(object): ""& ...
- CSS 魔法系列:纯 CSS 绘制各种图形《系列五》
我们的网页因为 CSS 而呈现千变万化的风格.这一看似简单的样式语言在使用中非常灵活,只要你发挥创意就能实现很多比人想象不到的效果.特别是随着 CSS3 的广泛使用,更多新奇的 CSS 作品涌现出来. ...
- Netty4.x中文教程系列(五)编解码器Codec
Netty4.x中文教程系列(五)编解码器Codec 上一篇文章详细解释了ChannelHandler的相关构架设计,版本和设计逻辑变更等等. 这篇文章主要在于讲述Handler里面的Codec,也就 ...
- WCF编程系列(五)元数据
WCF编程系列(五)元数据 示例一中我们使用了scvutil命令自动生成了服务的客户端代理类: svcutil http://localhost:8000/?wsdl /o:FirstServic ...
- JVM系列五:JVM监测&工具
JVM系列五:JVM监测&工具[整理中] http://www.cnblogs.com/redcreen/archive/2011/05/09/2040977.html 前几篇篇文章介绍了介 ...
- SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型
原文:SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型 友情提示,您阅读本篇博文的先决条件如下: 1.本文示例基于Microsoft SQL Server 2008 R2调测 ...
- VSTO之旅系列(五):创建Outlook解决方案
原文:VSTO之旅系列(五):创建Outlook解决方案 本专题概要 引言 Outlook对象模型 自定义Outlook窗体 小结 一.引言 在上一个专题中,为大家简单介绍了下如何创建Word解决方案 ...
- 系列五AnkhSvn
原文:系列五AnkhSvn AnkhSvn介绍 AnkhSVN是一款在VS中管理Subversion的插件,您可以在VS中轻松的提交.更新.添加文件,而不用在命令行或资源管理器中提交.而且该插件属于开 ...
- java多线程系列(五)---synchronized ReentrantLock volatile Atomic 原理分析
java多线程系列(五)---synchronized ReentrantLock volatile Atomic 原理分析 前言:如有不正确的地方,还望指正. 目录 认识cpu.核心与线程 java ...
随机推荐
- softmax回归(理论部分解释)
前面我们已经说了logistic回归,训练样本是,(且这里的是d维,下面模型公式的x是d+1维,其中多出来的一维是截距横为1,这里的y=±1也可以写成其他的值,这个无所谓不影响模型,只要是两类问题就可 ...
- zoj 3212 K-Nice(构造)
K-Nice Time Limit: 1 Second Memory Limit: 32768 KB Special Judge This is a super simple pr ...
- MySQL Multi-Range Read
MySQL 5.6版本提供了很多性能优化的特性,其中之一就是 Multi-Range Read 多范围读(MRR) , 它的作用针对基于辅助/第二索引的查询,减少随机IO,并且将随机IO转化为顺序IO ...
- Centos6.8 Jetty 安装配置
ssh root@IP Password------------------------------------------------------------------------------↑登 ...
- Eclipse上安装springsource-tool-suite(转)
Eclipse上安装springsource-tool-suite 版本必须匹配. spring tool suite 是一个基于eclipseIDE开发环境中的用于开发spring应用程序的工具.提 ...
- Tiny4412 Android5.0 定制:编译生成img后如何删除原厂的apk
在android-5.0.2/build/core/Makefile的315行可以看到,这里是apk生成签名相关的地方. 315 name := $(TARGET_PRODUCT) 316 ifeq ...
- 使用 nvm 管理多版本 node
首先,使用下面的命令来安装 nvm $ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | b ...
- Ubuntu 16.04 为 PHP7 添加 memcached 以及 redis 扩展
切换到 PHP 7 之后,网站的速度大幅提升,不过通常的扩展可能某一个就还没有支持 PHP7 Memcached 比如说我现在使用了最新的 Ubuntu 16.04,虽然内置了 PHP 7 源,但 m ...
- iOS10修改电池状态栏的方法
- django保存一个object的时候会发出信号
当django保存一个object的时候会发出一系列的signals,可以通过对这些signals注册listener,从而相应的signal发出时执行一定的代码. from django.core. ...