Flask-Application 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Flask-Application 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议 GPL-3.0
开发语言 Python
操作系统 跨平台
软件类型 开源软件
所属分类 程序开发常用工具包
开发厂商
地区 国产
提 交 者 114638571
适用人群 未知
收录时间 2019-12-03

软件简介

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

安装

pip install Falsk-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模型自动生成
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (1)

加载中
这个描述有Bug
06/10 21:06
回复
举报
更多评论
暂无内容
发表了博客
2019/10/31 17:19

[flask初学问题]RuntimeError: No application found. Either work inside a view function or push an appl...

看B站视频学习flask-SQLalchemy时,报错RuntimeError: No application found. Either work inside a view function or push an application context. See http://flask-sqlalchemy.pocoo.org/contexts/ 视频链接是https://bilibili.com/video/av19817183?p=20 P20 04-03数据库的基本操作1-增删改 位置3分17左右 以下是视...

0
0
发表了博客
2019/02/18 08:31

Flask之flask-script

简介 Flask-Script 从字面意思上来看就是 Flask 的脚本 是的,熟悉Django的同学是否还记得Django的启动命令呢? python manager.py runserver 大概是这样对吧 1.安装 Flask-Script pip install Flask-Script 2.将 Flask-Script 加入到 Flask 项目中 import MyApp # 导入 Flask-Script 中的 Manager from flask_script i...

0
0
发表了博客
04/19 20:39

【flask】flask讲解

flask接口调试利器 下面是Flask主页给我们的第一个例子,我们现在就由它入手,深入理解“@app.route()”是如何工作的。 Python import flask from flask import Flask app = Flask(__name__) @app.route("/") def hello():     return "Hello World!" 要想明白“@app.route()”的工作原理,我们首先需要看一看...

0
0
发表了博客
2019/07/10 15:55

Flask-认识flask

Python 现阶段三大主流Web框架 Django Tornado Flask 对比 百度百科 1.Django 主要特点是大而全,集成了很多组件,例如: Models Admin Form 等等, 不管你用得到用不到,反正它全都有,属于全能型框架 2.Tornado 主要特点是原生异步非阻塞,在IO密集型应用和多任务处理上占据绝对性的优势,属于专注型框架 3.Flask 主要特点小而...

0
0
发表了博客
04/19 20:47

【flask】 flask

python-web-廖雪峰, 不错link,参考链接 随着业务代码的增加,将所有代码都放在单个程序文件中,是非常不合适的。这不仅会让代码阅读变得困难,而且会给后期维护带来麻烦。 如下示例:我们在一个文件中写入多个路由,这会使代码维护变得困难。 from flask import Flask app = Flask(__name__) @app.rou...

0
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
1 评论
14 收藏
分享
返回顶部
顶部