Flask-Web开发入门(路由和视图)

对与上一篇深刻理解

@app.route("/<name>")
def hello(name):
   return "hello world"

这三行代码定义了一个URL到Python函数的映射关系,将这种映射关系的程序称为路由,而hello函数就是视图函数。
动态路由

@app.route("/<name>")
def hello(name):
   return "<h1>hello %s</h1>" %name

Flask支持这种动态形式的路由,路由中的动态部分默认时字符串,也支持使用int、float.比如路由/articles/只会匹配动态片段id为整数的URL
https://hello.com/articles/100,https://hello.com/articles/101,但不匹配
https://hello.com/articles/the-first-article 这种 URL。
反向路由
从函数获取该函数的url地址

from flask import Flask,url_for


app=Flask(__name__)

@app.route('/query_url')
def query():
    return "查询的地址为:"+ url_for('query')


if __name__=='__main__':
    app.run()

这里写图片描述

静态文件
即不会被改变的文件,比如图片,CSS文件和JavaScript原码文件。默认情况下,Flask在程序根目录中名为static的子目录中寻找静态文件。因此可以将静态文件放置在此目录。
有时还会应用到第三方库,为了不跟CSS文件和JavaScript原码文件混起来,可以将这些第三方库放到lib文件夹或者vender文件夹
这里写图片描述
提供一个favicon图标
favicon是favorites icon的缩写,也被称为website icon(网页图标)。通常而言,定义一个favicon的方法是将一个名为“favicon.ico“的文件置于Web服务器的根目录下。但是,正如我们在上面指出,
我们一般将图片等静态资源放在一个单独的static文件夹中。为了解决这种不一致,我们可以在站点模板的部分添加两个link组件,比如我们可以在template/base.html中定义favicon图标:

{% block head %}
{{super()}}
<link rel="shortcut	icon"	href="{{url_for('static',filename='favicon.ico')}}"	type="image/x-icon">
<link rel="icon" href="{{url_for('static',filename='favicon.ico')}}"type="image/x-icon">{%endblock%}

在上面的代码中,我们使用了super()来保留基模板中定义的块的原始内容,并添加了两个 link组件声明图标位置,这两个link组件声明会插入到head块的末尾。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值