flask入门

web框架的做用html

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

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

flask简单介绍服务器

Flask至关因而一个内核,只有两部份内容,路由模块(Verkzeug)和模板引擎(jinja2),其余app

全部的功能都要经过引入第三方扩展来实现(灵活)框架

 

#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 这个模板引擎来渲染模板

使用模板的好处:url

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

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:一、static是存放图片之类的地方二、templates用来存放.html文件三、在html中用ctrl+/来进行注释;用关键字加tab按键来补全代码四、链式调用就是过滤器能不断的叠加
相关文章
相关标签/搜索