python flask是什么_python中flask--1

Python Web 框架

Flask 轻量级WEB框架

AJAX 在WEB中完成异步请求和响应

Django 重量级WEB框架

1.静态网页 和 动态网页

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

动态网页:允许与服务器做动态交互的网页

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 , 视图层 , 处理用户的显示的内容的,如:html

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

M --- M

T --- V

V --- C

4.Flask 框架

1.什么是Flask

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

Flask中包含一个轻量级的web 服务器主要用于在开发阶段测试使用

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

2.安装Flask

1.查看已安装的Flask 及其 版本

在 python 的交互模式中

1.import flask

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

报错:没安装

2.flask.__version__

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

2.安装Flask

sudo pip3 install flask

pip3 download flask

3.Flask 的初始化

见代码... ...

练习:

访问路径:http://localhost:5000/login

在网页中显示:欢迎访问登录页面

访问路径:http://localhost:5000/register

在网页中显示:欢迎访问注册页面

5.Flask - 路由

1.什么是路由

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

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

2.路由的体现

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

1.路由的基本表示

#http://127.0.0.1:5000/

@app.route('/')

def index():

return "xxx"

#http://127.0.0.1:5000/manager/admin/login

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

def login():

return "xxx"

2.带参数的路由

路由中可以携带参数来表示要传递到视图中的数据

http://localhost:5000/show/laowang

http://localhost:5000/show/wangwc

1.基本带参路由

@app.route('/show/')

def show1(name):

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

pass

2.指定参数类型的路由

允许在声明路由时指定参数类型

避免了在程序中再转换

@app.route('/show//')

def show(name,age):

name : 字符串

age : 整数

int:类型转换器

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

类型转换器 作用

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

int: 整型

float: 浮点型

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

3.多 URL 的路由匹配

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

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

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

....

def index():

pass

练习:

当访问路径时以下任何一个的时候

localhost:5000

localhost:5000/index

localhost:5000/数字

localhost:5000/index/数字

将程序交给index()视图处理函数

判断路由中到低有没有数字传递进来

如果有:

响应:您当前看的页数为:xxx

如果没有

响应:您当前看的页数为:1

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

在Flask中默认只能接收get请求,无法接收post请求

在Flask中允许设定可以接收的请求方式,

如果请求方式不匹配的话,会响应回405(Method Not Allowed)

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

def xxx():

该函数既能接收post请求也能接收get请求

4.URL的反向解析

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

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

在Flask中要实现反向解析:

url_for(funName,args)

funName:要生成地址的函数名

args:该地址中需要的参数

6.模板 - Templates

1.什么是模板

模板,在Flask中就是允许响应给用户看的网页

在模板中,允许嵌入动态的内容

模板最终也会被解析成字符串再响应给客户端,这一过程称为"渲染"

Flask中,模板是依赖于Jinja2的模板系统

http://jinja.pocoo.org/

2.模板的设置

默认情况下,Flask会在程序目录中搜索一个 templates 的目录

作为模板的存放目录

3.模板的渲染

作用:在视图中,将模板文件(xx.html)渲染成字符串之后,再响应给浏览器

语法:

from flask import render_template

render_template('xxx.html')

参数:要渲染的模板

返回值:该模板中的字符串内容

传递变量到模板中

render_template('xxx.html',变量=值,变量=值,...)

在模板中获取变量的值

{{变量名}}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值