flask框架难吗,flask框架怎么搭建
相信学过Python的朋友一定都知道Flask这种web开发框架,但并不是每个人都知道。先说一下如何学习Flask,需要多长时间才能掌握。
首先,什么是Flask
Flask是一个基于Python,依托Jinja2模板引擎和Werkzeug WSGI服务的微框架。
Flask包含一个轻量级的web服务器,主要用于开发阶段的测试。
Falsk使用MTV框架模式
MTV框架模式
M :模型,模型层,主要负责根据数据库建模。
T :模板,模板层,处理用户的显示内容,比如:html。
V :视图,View,处理与用户交互的内容(请求和响应)。
让我们从模板、视图和模型三个部分来看看Flask框架。
Templates
模板这一部分主要解释以下几个部分:
过滤器
语法:
{ {可变过滤器}}
Jinja2模板中常用的过滤器有:
大写的第一个字符变成大写,其他字符变成小写。
Lower将值转换为小写字符。
Upper将值转换为大写字符。
将标题值中每个单词的第一个字符大写。
Trim删除值两端的空格标签(用于遍历可迭代对象)
{ % for list tuple dictionary % }中的变量
{%endfor%}
for标记中的内置对象循环
Loop.index获取下标
Loop.index0下标从0开始
loop.firstTrue/False
洪
下面是一个关于在Flask中使用宏的例子:
!-声明宏3360接收一个字符串作为参数,将参数放入P中并打印出来-
{%macroshowP(str)%}
宏:/h3显示的H3内容
p{{str}}/p
{%endmacro%}
!-使用宏-
差异
{%fornameinparams.list%}
{{showP(name)}}
{%endfor%}
/div
!-引入外部宏-
{%importmacros.htmlasms%}
{%fornameinparams.list%}
{{ms.show_p(name)}}
{%endfor%}继承
在父模板中:
{%blocktitle%}
父模板中的内容
{%endblock%}
在子模板中:
{ % extends parent template . html % }
{%nbs
p;blocktitle%}
子模板中的内容
{%endblock%}
子模板中的内容会覆盖父模板中的内容自定义404/500等错误页面
1.404的错误处理
Views
Views这部分主要讲解以下几个部分:
路由
请求方法
url反向解析
request对象
响应response
文件上传
cookies
session
路由
一:基本路由的配置:
请求方法
在Flask中默认只能接收get请求,post请求无法接收,但是可以手动设置请求的接收方式。
下面的函数既能接收get请求又能接收post请求
文件上传
html文件:
<formaction="/01-file"method="post"enctype="multipart/form-data">
后台代码
@app.route('/01-file',methods=['GET','POST'])
cookies
增:
session
fromflaskimportsession
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。