前言
Flask 是一个简单流行的python web框架, 笔者有一定的python基础, 所以打算学习以下Python web, 而不是Java Web, 这样可以快速入门实践. 学习Flask之前, 最好掌握基础的Python, HTLM, CSS, JavaScript用法, 这些都是Web开发的基础.
本例子介绍一个最简单的python Flask最小系统, 以熟悉Flask的基础概念和用法
运行环境
- Ubuntu 20.04
- Python3.8-minconda
- flask-2.0.1
- vscode/pycharm
环境配置
pip install Flask
pip install python-dotenv # optional
Flask App demo 实现
工程实现
功能: 创建一个Flask web服务器, 用户在浏览器上输入网站, 显示"Hello,Flask"
创建目录 HelloFlask, 添加一个新的文件, 取名app.py
app.py
from flask import Flask
# Flask() 第一个参数:python模块或者包的名称, 目的是帮助Flask在相应的文件夹中寻找资源
app = Flask(import_name=__name__)
# 注册路由, '/' --- 和index函数映射
# index()成为 视图函数
# app.route( URL_RULE) 的参数为URL规则, 是一个字符串, 必须以"/'开始
@app.route('/')
def index():
return '<h1>Hello, Flask !</h1>'
运行
在HelloFlask目录,打开终端, 输入 flask run
: 输出LOG:
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: off
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
浏览器: 打开浏览器,输入: http://127.0.0.1:5000/
App 流程分析
Step1: app = Flask(import_name=__name__)
创建了一个app对象, 输入参数为 __name__
, 目的是让Flask在指定的路径下寻找资源。 在python中, __name__
代码当前被执行的py文件的名称。 目前演示的demo比较简单, 目录下没有别的资源, 一般比较复杂的app, 会加载HTML模板, CSS文件等。
Step2: 定义一个视图函数(View Function), 并且绑定到指定的URL规则上。 绑定URL规则,Flask中使用python 装饰器实现. 一个视图函数可以绑定多个URL. 视图函数的返回: 字符串 或者 HTML模板, 这里简单起见,直接返回HTML字符串.
Step3: 启动App, 启动app的命令: flask run
, flask 是一个可执行程序,位于:/miniconda3/bin/flask
, 执行flask run命令之后, flask会在当前目录查找FLASK_APP, 也就是app.py
, 之后启动一个web server, 默认端口为: 5000
至此, 简单的Flask demo的流程介绍完了,下面介绍一些app启动的配置。
其他配置
-
修改端口和host IP
flask run --port=8080 --host=0.0.0.0
-
设置运行环境模式
export FLASK_DEBUG=1
export FLASK_ENV=development 开发模式
设置开发模式的目的: 修改Flask python代码只需ctrl+s 保存,浏览器会自动刷新。
网友评论