目录
Flask框架
一、Flask框架简介
1、简介:
Flask框架 是 Python语言的一款 WEB 开发框架
诞生于2010年的愚人节,作者:Armin Ronacher
Flask的两个主要核心组件: Werkzeug(路由模块) 与 Jinja(模板引擎)
Flask灵活度高,不会帮你做太多的决策,一些都是你可以按照自己的意愿进行更改
2、特点:
微框架、简洁
可通过第三方来扩展、灵活性高
开发效率高
二、虚拟环境
1、全局环境变量
1、打开环境变量窗口
Windows 系统 > 我的电脑(右键) > 属性(R) > 高级系统设置 > 高级 > 环境变量(N)
2、在系统变量中新建一个环境变量,变量名(名称固定的):WORKON_HOME,变量值(文件路径): E:\envs
环境变量 > 系统变量(S) > 新建(N) > 变量名:WORKON_HOME > 变量名:E:\envs > 确定保存
2、创建虚拟环境
- 使用pip库的 pipenv 管理工具,需要pip进行安装( pip install pipenv)
1、windows系统先进入CMD命令行窗口,在命令行中打开对应的文件夹,输入命令’pip install pipenv’ 回车进行安装虚拟环境 , 安装完毕后 再输入 ‘pipenv shell’ 回车创建虚拟环境(也是进入虚拟环境的方式)
Windows 系统 > WIN + R > CMD窗口 > 输入’E:’ > cd flask框架 > 输入’pip install pipenv’ > 回车 > 安装完成后 > 输入 ‘pipenv shell’ > 创建虚拟环境会自动进入到虚拟环境
1、WIN + R 打开运行 输入 CMD 进入命令行窗口
2、在命令行中输入E: (跳转到项目路径的磁盘)
3、在命令行中输入cd flask框架 (cd 项目文件夹)
4、输入 ‘pip install pipenv’ 用pip安装环境管理工具
5、输入 ‘pipenv shell’ 创建虚拟环境 , 在路径前面多个括号就证明成功进入虚拟环境
6、exit 退出虚拟环境,或者直接关闭CMD窗口
三、PyCharm 项目创建
1、选择文件路径 > E:/flask框架 (如果项目已经在这路径直接进行第二步更改解释器路径即可)
2、选择 Existing interpreter 选择本地解释器 > 路径 E:\envs\flask框架-xFv1VOy9\Scripts\python.exe
这个 ‘flask框架-xFv1VOy’ 文件夹根据在CMD中创建虚拟环境的名字而定,并不固定
完成上面操作可以在 PyCharm > File > Settings > Project:flask框架 > Project lnterpreter 中查看是否存在flask模块
无误后可以开始flask框架的第一个程序!!
四、Flask框架第一个程序
1、flask第1个程序
from flask import Flask
# 导入 flask 模块中的 Flask 类
app = Flask(__name__)
# 创建一个该类的实例,传参数 __name__
# Flask 传入的第一个参数是应用模块或者包的名称(在单一模块中使用那么就传入__name__)
@app.route('/')
def hello_world():
return 'hello world!'
#定义一个函数,返回值为字符串,并用装饰器app.route('/')进行装饰
#route()装饰器可以告诉 Flask 触发函数的URL
#函数名称被用于生成相关联的 URL 。函数最后返回需要在用户浏览器中显示的信息
if __name__ == '__mian__'
app.run()
#定义主程序的入口,当此模块为主文件时,运行程序。
2、DEBUG模式
- DEBUG模式简介
开启了edbug模式后
1、在代码中出现了异常,可以在浏览器的页面中查看到具体错误的信息,以及错误代码的位置,方便开发调试
2、再Python中修改任何代码只需 ‘ctrl + s’ 保存 flask就会自动更新网站,则不需要重新运行
在网页上可以输入PIN码进行代码调试,PIN码可以在Pyhotn运行栏查询
- 进入debug模式
方法1:
app.run(debug=True)
方法2:
app.debug = True
方法3:
app.config[DEBUG] = True
方法4:
app.config.update(debug = True)
3、配置文件
新建一个名为 config 的 py 文件作为配置文件
在配置文件里可以配置一些参数 <可以通过这里开启DEBUG模式>
然后通过导入模块导入配置文件
在config.py文件中定义一些参数:
DEBUG = True
在主文件中加载配置文件
方法1:
import config
app.config.from_object('config')
方法2:
import config
app.config.from_pyfile('config.py')
4、URL和函数视图
- URL 和 函数 的映射关系
4.1、URL:
URL(路由):统一资源占位符
4.2、视图函数:
被 route 装饰器的函数就是视图函数
以传递的参数作为URL,返回值则在浏览器页面中显示
试图函数:
@app.route('/')
def hello_world():
return 'hello world!'
’ / ’ 作为分隔符,不能做末尾加’ / ’
需要以/为严格的结尾,
< > 尖括号相当于字符串的占位符,是固定写法,定义一个形参,接受一个参数,但是要符合变量规则
语法:
converter : variable
converter 就是指定的类型
示例1:
@app.route('/b/<vla>')
def Article(vla):
return '这是第{}篇文章'.format(vla)
示例2:指定了vla只能传递string类型的参数
@app.route('/b/<string:vla>')
def Article(vla):
return '这是第{}篇文章'.format(vla)
示例2:指定了vla只能传递string类型的参数
@app.route('/b/<path:vla>')
def Article(vla):
return '这是第{}篇文章'.format(vla)
示例3:
@app.route('/<any(str,list):url_path>/')
def test(url_path):
return url_path
数据类型 | 描述 |
---|---|
string | 默认的数据类型,接受没有任何斜杆的字符串; |
int | 造型 |
float | 浮点型 |
path | 和string类似,但可以传递斜杆 / |
uuid | uuid类型的字符串 |
any | 可以指定多种路径 |
’ ?’ 也可以作为分隔符