flask初识,简单使用

介绍与使用

Flask是由python实现的一个web微框架,让我们可以使用Python语言快速实现一个网站或Web服务。
最主要的是小(微框架)

首先看看flask的安装:https://dormousehole.readthedocs.io/en/latest/installation.html

简单使用

最小单元
在这里插入图片描述
开启debug模式的一个小坑,总是没开启。可以看看这个
https://www.jianshu.com/p/59b8d17b889f?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation

路由和变量规则

路由

add_url_rule和@app.route等价
在这里插入图片描述
通过查看@app.rout,它底部调用的也是add_url_rule
在这里插入图片描述

add_url_rule至少需要一个rule,还需要一个试图函数
在这里插入图片描述
在这里插入图片描述

可以看出,通过add_url_rule和使用装饰器是一样的。

变量规则

在这里插入图片描述
路由链接通过使用参数,得到想要的不同变量值。key 就是一个变量,默认是字符串
在这里插入图片描述
在这里插入图片描述
除此之外,通过官方文档查看,flask路由变量中还可以接受的数据类型
在这里插入图片描述

int类型

尝试着使用int类型
在这里插入图片描述

在这里插入图片描述
发现报错,不支持返回int,所以直接转str

在这里插入图片描述
在这里插入图片描述

float类型

在这里插入图片描述
在这里插入图片描述

path类型

顾名思义,path就是一个路径,在后面跟一串路径时会用到。
在这里插入图片描述
可以看到path其实就是一个str类型
在这里插入图片描述

uuid类型

uuid类型比较特殊,uuid时唯一标识,简单通过一个脚本先创建一个
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

唯一url

在这里插入图片描述
简单来理解就是,代码里路径包含/,最后请求无论带不带都可以请求成功。
如果写的代码没有最后路径的/,那么请求时带上最后的/就会出错。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

Flask的响应返回类型

在这里插入图片描述
从之前的一次报错信息查看,返回类型可以是str,dict,tuple,Respons instance,WSGI callable

1.str字符串

@app.route('/index')
def index():
    return '北京'

在这里插入图片描述

在这里插入图片描述
通过查看返回头信息,是html类型,那么就可以尝试加入html标签,可以看出是生效了的
在这里插入图片描述
在这里插入图片描述
//将str进行Response封装,最终返回的也是respnse对象。带着疑问看第4种类型

2.dict 字典类型

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
返回json格式数据,此时加入标签则不能生效

3.tuple元组

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
发现确实是元组,却不行。先缓一下。看下一个response对象

//严格意义上,这里的元组是一个内容+状态码
在这里插入图片描述
在这里插入图片描述
或者404,自定义一些错误

在这里插入图片描述
在这里插入图片描述

4.response对象

flask官网查一下Response
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
返回response对象,最开始返回的str也是相当于把str内容返给Response进行包装。再返回的。

在这里插入图片描述
有时,为了在返回中加入某些自定义的头信息,也会使用make_response ()函数
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

URL构建

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
这里不知道这个用来干什么。暂时只想到,在之后使用中,比如登录,之后返回一个另一个url访问。。先不管,继续往下学习。

request 对象

HTTP请求

先上图
在这里插入图片描述
请出Postman
在这里插入图片描述
在这里插入图片描述
这里相同的路径可通过不同的方法得到不同的结果。可以用在比如profile填写一类的东西吧。get请求profile,post更新编辑profile

获取参数

当发送一个请求时,想知道这个请求传递的参数。方便观察,可以把它搞出来。Get方法可以通过request.args.get获

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

html页面渲染

通过使用render_template来返回前端html页面。
在这里插入图片描述
在这里插入图片描述

app = Flask(__name__)

在创建时,默认模版文件夹路径为templates,所以只需要把html文件放在templates目录下,就可以使用render_template去找html文件,进行渲染成str类型,返回。
例1:
在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>首页</title>
    <style>
        div{
            width: 100%;
            height: 200px;
            border:2px solid cornflowerblue;
        }
    </style>
</head>
<body>
    <h1>大型交友网站凸^-^凸</h1>
    <div>
    <form action="/register2" method="get">
        <p><input type="text" name="username" placeholder="请输入用户名"></p>
        <p><input type="password" name="password" placeholder="请输入密码"></p>
        <p><input type="submit" placeholder="提交"></p>
    </form>
    </div>
</body>
</html>

在这里插入图片描述

ps:当遇到404问题时,可以通过使用 errorhandler() 装饰器以定制出错页面:
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值