(3)flask-URL与函数映射

1.传递参数

传递参数的语法:“/<参数名>/”,然后在试图函数中,也要定义同名的参数。

2.参数的数据类型

1.如果没有指定具体的数据类型,那么默认就是使用“string”数据类型。

2.“int”数据类型只能传递“int”类型。

3.“float”数据类型只能传递“float”类型。

4.“path”数据类型和“string”有点类似,都是可以接收任意字符串,但是“path”可以接收路径,也就是说可以包含斜杠。

5.“uuid”数据类型只能接收符合“uuid”的字符串,“uuid”是一个全宇宙都是唯一的字符串,一般可以用来作为表的主键。

6.“any”数据类型可以在一个“url”中指定多个路径,例如:

@app.route('/<any(blog,article):url_path>/<id>')
def detail(url_path,id):
    if url_path == blog:
        return '博客详情:%s' % id
    else:
        return '博客详情:%s' % id

3.接收用户传递的参数

第一种:使用path的形式(将参数嵌入到路径中),就是上面讲的。

第二种:使用查询字符串的方式,就是通过"?key=walue"的形式传递的。

@app.route(/d/)
def d():
    wd = request.args.get('wd')
    return "你是通过查询字符串的方式传递的参数:%s" %wd

如果你的这个页面想要做“SEO”优化,就是被搜索引擎搜索到,那么推荐使用第一种形式(path的形式),如果不在乎搜索引擎优化,那么就可以使用第二种(查询字符串的形式)。

猜你喜欢

转载自www.cnblogs.com/renshengruxi/p/12309510.html