Flask-ApplicationFlask 项目初始化工具

联合创作 · 2023-09-28 10:46

Flask-Application是专门给Flask提供项目初始化的工具,通过该工具可以快速地创建一个Flask的初始项目/应用。新创建的项目/应用会包含良好的目录结构和基础的项目配置信息,无需再通过手工的方式创建这些基础目录和文件。


安装


pip install Flask-Application 

快速开始


flask-app startproject demo_pj
cd demo_pj
python manage.py 8000

使用你喜欢的浏览器访问http://localhost:8000/demo_pj/,你就可以看到启动好首页。 


使用说明


多应用项目


Flask的多应用项目模板具有以下特点:



  • 基于blueprint进行app的路由和管理

  • 每个app都会有自己的mvc结构和templates目录

  • 集成了gunicorn作为正式环境的启动方式

  • 集成了日志配置,通过current_app.logger对象直接使用

  • 支持新增app


创建方式


flask startproject demo_pj

该命令执行完成之后就会在当前目录创建demo_pj的项目目录,其具体结构如下:


|-- demo_pj
|-- apps
|-- demo_pj
|-- controller
|-- __init__.py
|-- model
|-- __init__.py
|-- view
|-- __init__.py
|-- app.py
|-- index.py
|-- templates
|-- home.html
|-- __init__.py
|-- logs
|-- static
|-- favicon.ico
|-- utils
|-- __init__.py
|-- constants.py
|-- decorators.py
|-- __init__.py
|-- __init__.py
|-- config.py
|-- gconfig.py
|-- manage.py
|-- wsgi.py
|-- requirements.txt
|-- startserver.sh

创建完Flask项目之后,在命令行直接进入到应用的主目录,然后执行启动命令:


cd demo_pj
python manage.py 8000
# or
python manage.py runserver 8000

启动完成之后可以执行访问http://localhost:8000/demo_pj/来访问项目的主目录。


线上部署


Flask-App集成了gunicorn来作为生成环境的部署方式,后台以多进程+gevent的方式提供并发支持,线上部署时使用如下命令:


sh startserver.sh

默认启动的端口号为8000,如果需要修改端口号,可在gconfig.py文件里修改bind字段。



通常在gunicorn服务之前还需要添加nginx代理服务,除了直接处理静态文件,还同时转发请求给后台的gunicorn服务。



单应用工程


flask createapp app01

暂未实现


TODO



  • 支持为多应用项目新增app

  • 支持创建单应用项目

  • 集成RESTfulAPI

  • 集成flask-sqlarchemy

  • sqlarchemy模型自动生成

浏览 29
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报