一个最简单的 Flask 应用可以是单个文件。

hello.py

from flask import Flaskapp = Flask(__name__)@app.route('/')
def hello():return 'Hello, World!'

然而,当项目越来越大的时候,把所有代码放在单个文件中就有点不堪重负了。 Python 项目使用 包 来管理代码,把代码分为不同的模块,然后在需要的地方导入 模块。

教程项目包含如下内容:

  • flaskr/ ,一个包含应用代码和文件的 Python 包。
  • tests/ ,一个包含测试模块的文件夹。
  • venv/ ,一个 Python 虚拟环境,用于安装 Flask 和其他依赖的包。
  • 告诉 Python 如何安装项目的安装文件。
  • 版本控制配置,如 git 。不管项目大小,应当养成使用版本控制的习惯。
  • 项目需要的其他文件。

最后,项目布局如下:

/home/user/Projects/flask-tutorial
├── flaskr/
│   ├── __init__.py
│   ├── db.py
│   ├── schema.sql
│   ├── auth.py
│   ├── blog.py
│   ├── templates/
│   │   ├── base.html
│   │   ├── auth/
│   │   │   ├── login.html
│   │   │   └── register.html
│   │   └── blog/
│   │       ├── create.html
│   │       ├── index.html
│   │       └── update.html
│   └── static/
│       └── style.css
├── tests/
│   ├── conftest.py
│   ├── data.sql
│   ├── test_factory.py
│   ├── test_db.py
│   ├── test_auth.py
│   └── test_blog.py
├── venv/
├── setup.py
└── MANIFEST.in

如果使用了版本控制,那么应当忽略运行项目时产生的临时文件以及编辑代码时编辑 器产生的临时文件。忽略文件的基本原则是:不是你自己写的文件就可以忽略。举例 来说,假设使用 git 来进行版本控制,那么使用 .gitignore 来设置应当忽略 的文件, .gitignore 文件应当与下面类似:

.gitignore

venv/*.pyc
__pycache__/instance/.pytest_cache/
.coverage
htmlcov/dist/
build/
*.egg-info/

Flask 项目布局相关推荐

  1. Python Flask框架-开发简单博客-项目布局、应用设置

    作者:Eason_LYC 悲观者预言失败,十言九中. 乐观者创造奇迹,一次即可. 一个人的价值,只在于他所拥有的.所以可以不学无术,但不能一无所有! 技术领域:WEB安全.网络攻防 关注WEB安全.网 ...

  2. flask项目中无法更改端口号

    flask项目中无法更改端口号 app.run(port=8000) 问题 启动后是 127.0.0.1:5000 解决方法

  3. Go 语言编程 — 项目布局规范

    目录 文章目录 目录 项目布局(Project Layout)规范 程序目录 /cmd(Command)包 /internal /pkg(Package) /vendor Service(服务端)应用 ...

  4. 【Flask项目2】模型类的映射方式新版本和旧版本(4)

    方式一:模型类的映射方式旧版本 1.Flask-Migrate介绍 k-migrate可以十分方便的进行数据库的迁移与映射,将我们修改过的ORM模型映射到数据库中.flask_migrate是基于Al ...

  5. centos7 ifconfig命令找不到_centos7+mysql+gunicorn+flask项目部署

    前言 出于学习和实践的目的,近期自己写了一个小项目关于flask的API项目,涉及到服务器的上线部署问题,这里就做一个详细的记录和分享吧~欢迎一起交流学习指正~ 正文 一.centos7安装pytho ...

  6. 全球及中国LCP行业应用项目布局及产能规模预测报告2021版

    全球及中国LCP行业应用项目布局及产能规模预测报告2021版  HS--HS--HS--HS--HS--HS--HS--HS--HS--HS--HS--HS-- [修订日期]:2021年11月 [搜索 ...

  7. flask python web开发 可视化开发_Python + Flask 项目开发实践系列六

    今天开始我们讲讲Flask Web实践项目开发中的查看详情功能是如何实现的. Step1:html 部分 lists +="<tr>"+ //拼凑一段html片段 &q ...

  8. go 项目 cmd目录_Golang 项目布局浅析

    奇技 · 指南 Golang作为当下云开发中最为流行的语言之一,越来越受到广大程序员的青睐.开发Golang项目经常遇到的一个常见问题是如何组织项目结构布局.今天作者从项目结构以及对内部.外部包的引用 ...

  9. flask 项目基本框架的搭建

    综合案例:学生成绩管理项目搭建 一 新建项目目录students,并创建虚拟环境 mkvirtualenv students 二 安装开发中使用的依赖模块 pip install flask==0.1 ...

最新文章

  1. QCon讲师对对碰——洪小军采访梁宇鹏:就是爱Golang
  2. 实例讲解《Microsoft AJAX Library》(2):DomEvent类
  3. 探讨程序员如何学习你不熟悉的技术,以及用什么样的方法去学习.
  4. ArcGIS实验教程——实验三十二:ArcGIS水文分析(流向分析、计算水流长度、汇流分析、河网分析、流域分析)
  5. IISASP.NET 站点IP跳转到域名
  6. Android 生成随机数,获取一条随机字符串
  7. VMware vCenter Server安装
  8. 马云:梭梭树就是企业家精神
  9. geotools 读取shp属性过滤_Flink进阶之使用布隆过滤器实现UV统计
  10. 使程序在Windows任务管理器隐藏
  11. 目标检测方法总结(R-CNN系列)
  12. unity, 判断可见性
  13. 同程旅行 IAST 实践
  14. 2021-03-26 大数据技术对企业管理的影响和应用前景分析
  15. 计算机网口速率修改,win7系统修改无线网卡连接速率的操作方法
  16. 点滴:均线交易策略代码的参考
  17. 深度探索C++对象模型笔记
  18. loadrunner破解以及超级license
  19. TopCoder教程
  20. 基于keras的深度学习——分类

热门文章

  1. js设计模式-组合模式
  2. Nebula3 渲染系统
  3. 2012 Multi-University Training Contest 3
  4. XHTML和HTMl区别
  5. python 迭代详解_详解python中的迭代
  6. java继承对象转换_java中类与对象的继承重写,存储以及自动转换和强制转换。...
  7. linux 同步 多终端,Linux系统如何实现不同终端间的同步
  8. uniny 物体运动到一个点停止_Unity3D中的逐点运动
  9. C语言学习之输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
  10. 蓝牙配对模式 java_BLE(低功耗蓝牙)配对和绑定