Skr-Eric的Flask课堂(一)——Flask的介绍和路由

1.静态网页 和 动态网页

1.静态网页 :无法与服务器做动态交互的网页

2.动态网页 :允许与服务器做动态加护的

 

2.WEB 与 服务器

1.WEB  :  网页(HTML,CSS,JS)

2.服务器

能够给用户提供服务的机器就可以称为 服务器

1.硬件 与 软件

硬件 :一台主机

软件 :一个能够接受用户请求并给出响应的程序

1.APACHE

2.TOMCAT

3.IIS(Internet Information Service)

4.Nginx

2.作用

1.存储WEB上的信息

2.能够处理用户的请求(request)并给出响应(response)

3.执行服务器端程序

4.具备一定的安全功能

 

3.框架

1.什么是框架

框架是一个为了解决开放性问题而存在一种程序结构。

框架本身提供了一些最基本的功能。

我们只需要在基础功能上搭建自己的操作就可以了。

2.Python Web 框架

1.Flask - 轻量级

2.Webpy - 轻量级

3.Tornado - 异步框架

4.Django - 重量级框架

3.框架模式

1.MTV

M :Models,模型层,主要负责数据库建模、

T :Templates,模板层,用于处理用户的显示内容,如 html

V :Views,视图,处理与用户打交道的内容(请求和响应)

2.MVC

M :Models,模型层,主要负责数据库建模

V :Views,视图,处理用户的显示内容

C :Controller,控制器,用于与用户交互的部分内容(请求和响应)

 

M  ---  M

T  ---  V

V  ---  C

 

4.Flask框架

1.什么是Flask框架

Flask是一个基于Python并且依赖于Jinja2模板引擎和Werkzeug WSGI服务的一个微型框架

WSGI :Web Server Gateway Interface(WEB服务网关接口)

Flask是采用 MTV 的框架模式

2.安装 Flask

1.查看已安装的Flask版本

在 python 的交互模式中 :

1. import flask

没报错:已经安装了Flask,可以继续查看版本

报错:没安装Flask

2. flask.__version__

已安装Flask的情况下,可以查看安装的版本

2.安装Flask

sudo pip3 install flask

pip3 download flask

3.Flask 初始化

 

5.Flask - 路由(route)

1.什么是路由

客户端发送请求给web服务器,web服务器再将请求发送给Flask程序实例

程序实例需要知道每个url请求所对应的运行代码是谁。所以程序中必须要创建一个 url 请求地址 到 python运行函数的一个映射。处理url和函数之间的关系的程序就是"路由"

2.路由的体现

在 Flask 中,路由是通过 @app.route 装饰器来表示的

1.路由的基本表示

# http://localhost:5000

@app.route('/')

def index():

return "xxx"

# http://localhost:5000/admin/login

@app.route('/admin/login')

def admin_login():

return 'xxx'

2.带参数的路由

路由中可以携带参数表示不同的数据

http://localhost:5000/show/laowang

http://localhost:5000/show/wangwc

http://localhost:5000/show/laowang.gebi

1.基本带参路由

@app.route('/show/<name>')

def show(name):

name : 表示的就是从地址栏上传递过来的数据

return 'xxx'

2.带多个参数的路由

http://localhost:5000/show/laowang/36

@app.route('/show/<name>/<age>')

def show(name,age):

return 'xxx'

3.指定参数类型的路由

@app.route('/show/<name>/<int:age>')

def show(name,age):

name : 字符串

age : 整数

int: 类型转换器

Flask 中所支持的类型转换器:

类型转换器        作用

缺省              字符串,不能有斜杠('/')

int:              整型

float:            浮点型

path:             字符串,可以有斜杠('/')

3.多 URL 的路由匹配

为多个访问地址匹配同一个视图处理函数

@app.route('/地址1')

@app.route('/地址2')

... ...

def index():

return ""

4.路由中设置 HTTP 请求方法

Flask路由也允许设置对应的请求方法(post/get),只有将匹配上请求方法的路径才能交给对应的视图处理函数取处理。所有的路由,默认只接受 get 请求

@app.route('/xxx/xxx',methods=['POST'])

def xxx:

# 该函数只能接受post请求

pass

@app.route('/xxx/xxx',methods=['GET','POST'])

def xxx:

# 该函数既能接受get请求也能接受post请求

pass

5.URL的反向解析

正向解析:程序自动解析,根据@app.route()中的访问路径,来匹配处理函数

反向解析:通过视图处理函数的名称自动生成对应的访问路径

在Flask中要实现反向解析的话需要使用 :

url_for(funName,args)

funName:要生成地址的函数名

args:该地址中需要的参数

 

 

 

想要看更多的课程请微信关注SkrEric的编程课堂

 

 

weixin028基于微信小程序小说阅读器设计+ssm后端毕业源码案例设计 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值