码迷,mamicode.com
首页 > 其他好文 > 详细

flask蓝图与插件

时间:2020-06-21 23:37:43      阅读:61      评论:0      收藏:0      [点我收藏+]

标签:管理数据   init   局限   复杂   入口   lan   rate   字典   导包   

一、插件与蓝图

  • flask中的配置文件

    flask中的配置文件是放在app.config,可以像操作字典一样进行操作

  • 直接编写

    直观,简单

    将常见的一些固定不变的配置写入

  • 配置文件

  • 配置类

    推荐使用

二、蓝图

Web开发的过程中,如果我们将所有的Flask的请求处理方法都放在同一个文件下,非常不利于后续的管理与迭代。我们应当做到模块化的管理,以功能模块进行划分,将各自的功能归由各自的模块进行管理,方便后续的开发维护,但是由于Flask开发灵活,但是目录结构将会很复杂。Flask为了简化这个过程,提出了蓝图(Blueprint)的概念。

蓝图很方便的将一个应用分解为一套蓝图(子应用),极大的简化大型应用并为扩展的子应用提供集中的注册入口。

三、flask-script

flask-script是第三方的提供的插件(交互式插件),可以使用这个插件完成项目的管理,添加命令

  • 安装插件

    pip install flask script

  • 使用插件

    # 导入类
    from flask_script import Manager
    
    # 管理App
    manager = Manager(app)
    
    if __name__ == ‘__main‘:
        manager.run()
    
  • 安装命令

    # 导入包
    from flask_script import Manager,Command
    
    # 管理app
    manager = Manager(app)
    
    
    # 创建类继承Command
    class MyRunserver(Command):
        def run(self):
            app.run(host="0.0.0.0",post=8899)
            
    # 注册命令
    manager.add_command("myrun",MyRunserver)
    

四、flask-migrate

flask要完成数据迁移任务,使用的命令create_all方法,creat_all有很大的局限性,flask可以使用flask-migrate插件完成数据的迁移

  • 安装

    pip install flask-migrate

  • 使用

    项目的__ init __.py文件

# 导入包
from flask_migrate import Migrate

# 创建空的对象
migrate = Migrate

# 管理数据库
migrate.init_app(app,db)
  • 安装命令

    # 导包
    from flask_migrate import MigrateCommand
    
    # 注册migrate命令
    manager.add_command("db",MigrateCommand)
    
  • 查看db相关的命令

    python main.py

    执行命令

    1、init命令,初始化,创建迁移文件目录,只需要执行一次

    python main.py db init

    2、migrate生成迁移文件,将模型中的变更生成对应的迁移文件

    python main.py db migrate

? 3、upgrade执行迁移文件,将生成的迁移文件执行,达到同步表结构的效

? python main.py db upgrade

flask蓝图与插件

标签:管理数据   init   局限   复杂   入口   lan   rate   字典   导包   

原文地址:https://www.cnblogs.com/markshui/p/13174430.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!