Flask
MJX2023/11/04PythonFlask
介绍
Flask 诞生于2010年,是Armin ronacher(阿明·罗纳彻)用 Python 语言基于 Werkzeug 工具箱编写的轻量级 Web 开发框架。
Flask 本身相当于一个内核,其他几乎所有的功能都要用到扩展(邮件扩展Flask-Mail,用户认证Flask-Login,数据库Flask-SQLAlchemy),都需要用第三方的扩展来实现。比如可以用 Flask 扩展加入ORM、窗体验证工具,文件上传、身份验证等。
官方文档:
准备阶段
使用本地环境或者创建虚拟环境(建议创建虚拟环境)。具体怎么创建可以看 这篇文章
安装 Flask
pip install flask
项目结构
- static:静态文件(js、css、图片等等)
- templates:模板文件(主要是 HTML 文件)
- app.py:项目从这个文件运行,是核心文件。
Flask文件结构默认为上面这样,是可以通过配置改变的(如果不修改的话就一定要按照上面目录来,否则会报错)。
第一个Falsk程序
配置好了环境,了解了项目结构后就可以开始我们的第一个 Flask 程序了。
from flask import Flask # 导 Flask 类,这个类是项目的核心。
app = Flask(__name__)
# 初始化 Flask 应用程序的实例对象
@app.route('/')
# 装饰器 作用是将url中的 / 映射到 hello_world 这个视图函数上面
# 访问我这个网站的 / 目录的时候,会执行hello_world这个函数,然后将这个函数的返回值返回给浏览器。
# 如当你访问网址 http://127.0.0.1:8888/ -> 跳转去访问 hello_world 函数
def hello_world(): # 视图的函数名不能重复,否则报错
return 'Hello World!' # 这里可以返回很多东西: 字符串、数字、静态文件、html、json 数据等等
if __name__ == '__main__':
app.run(host='127.0.0.1', port=8888, debug=True)
# 启动服务
# host: ip,如果希望外网也能访问要设置为 0.0.0.0
# port:端口默认为 5000
# debug:debug 模式下修改代码会重新运行网站,不开启的话修改代码以后需要自己重新运行代码
Flask( )的部分参数讲解:
import_name:Flask程序所在的包(模块),传 __name__ 就可以。其可以决定 Flask 在访问静态文件时查找的路径static_path:静态文件存储访问路径(不推荐使用,使用static_url_path代替)static_url_path:静态文件的 url 访问路径,可以不传,默认为:/ + static_folderstatic_folder:静态文件存储的文件夹,可以不传,默认为 statictemplate_folder:模板(HTML)文件存储的文件夹,可以不传,默认为 templates
