首页 > 其他 > 详细

flask入门

时间:2019-11-18 11:47:09      阅读:73      评论:0      收藏:0      [点我收藏+]

web框架的作用

flsk作为web框架,它的优点是不用去理解怎么和服务器交互,它会帮你实现。降低开发难度

其次它能调用第三饭库(避免重复的造轮子)

flask简单介绍

Flask相当于是一个内核,只有两部分内容,路由模块(Verkzeug)和模板引擎(jinja2),其他

所有的功能都要通过引入第三方扩展来实现(灵活)

 

#hello.py
#导入flask类
from flask import Flask,render_template#render_template是html要用的

#flask函数接受一个参数name,它会指向程序所在的模块
app = Flask(__name__)

#装饰器的作用是将路由映射到视图函数index
#使用methods参数指定可以接受的请求方式,可以是多种@app.route(‘/‘,methods=[‘GET‘,‘POST‘])
#路由默认传递的参数为string类型
@app.route(‘/‘)
def hello_item():
# print (type(order_id))#查询类型
url_str=‘www.itcast.com‘
my_list=[1,3,5,7,9]
my_dict={"林峰","www.1234352"}
#通常使用变量名和要传递的数据变量名保持一致
return render_template(‘index.html‘,url_str=url_str,my_list=my_list,my_dict=my_dict)

#Flask应用程序实例的run方法启动web服务器
if __name__==‘__main__‘:
app.run()

 

 

 

 

 

Jinja2模板引擎

模板

在前面的示例中,视图函数的主要作用是生成请求的响应,这是最简单的请求。实际上,视图函数有两个作用:处理业务逻辑和返回响应内容。在大型应用中,把业务逻辑和表现内容放在一起,会增加代码的复杂度和维护成本。本节学到的模板,它的作用即是承担视图函数的另一个作用,即返回响应内容。

  • 模板其实是一个包含响应文本的文件,其中用占位符(变量)表示动态部分,告诉模板引擎其具体的值需要从使用的数据中获取
  • 使用真实值替换变量,再返回最终得到的字符串,这个过程称为“渲染”
  • Flask是使用 Jinja2 这个模板引擎来渲染模板

使用模板的好处:

  • 视图函数只负责业务逻辑和数据处理(业务逻辑方面)
  • 而模板则取到视图函数的数据结果进行展示(视图展示方面)
  • 代码结构清晰,耦合度低

Jinja2

两个概念:

  • Jinja2:是 Python 下一个被广泛应用的模板引擎,是由Python实现的模板语言,他的设计思想来源于 Django 的模板引擎,并扩展了其语法和一系列强大的功能,其是Flask内置的模板语言。
  • 模板语言:是一种被设计来自动生成文档的简单文本格式,在模板语言中,一般都会把一些变量传给模板,替换模板的特定位置上预先定义好的占位变量名。

渲染模版函数

  • Flask提供的 render_template 函数封装了该模板引擎
  • render_template 函数的第一个参数是模板的文件名,后面的参数都是键值对,表示模板中变量对应的真实值。

 

{#index.html#}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>hello word</title>
</head>
<body>
afdasdfa<br>
{#注释:ctrl+/#}
{#列表的使用#}
{#字典的使用#}
{{ url_str }}<br>
{{ my_list[3] }}<br>
{{ my_dict }}<br>

<hr>
{#for循环的使用,建议先写 for在按tab按钮自动补全#}
{% for my in my_list %}
{% if my>3 %}
{{ my }}<br>
{% endif %}
{% endfor %}
<hr>
{#过滤器的使用#}
{{ url_str|upper }}<br>
{#字符串的反转#}
{{ url_str|reverse }}

</body>
</html>



tips:
1、static是存放图片之类的地方
2、templates用来存放.html文件
3、在html中用ctrl+/来进行注释;用关键字加tab按键来补全代码
4、链式调用就是过滤器能不断的叠加

 

 

flask入门

原文:https://www.cnblogs.com/linfeng-up/p/11881100.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!