码迷,mamicode.com
首页 > 其他好文 > 详细

flask第二十一篇——练习题

时间:2018-04-04 21:07:45      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:nbsp   sel   main   bsp   list   flask   return   run   split   

自定义url转化器

实现一个自定义的URL转换器,这个转换器需要满足的是获取从多少到多少的url,例如,你输入的地址是http://127.0.0.1:8000/1-5/,那么页面返回[1,2,3,4,5]

答案:

 1 # coding: utf-8
 2 
 3 from flask import Flask
 4 from werkzeug.routing import BaseConverter
 5 
 6 app = Flask(__name__)  # type: Flask
 7 app.debug = True
 8 
 9 @app.route(/)
10 def hello_world():
11     return Hello World!
12 
13 class NumConverter(BaseConverter):
14 
15     regex = r\d+-\d+
16 
17     # 把url中的参数传到视图函数中,用to_python方法
18     def to_python(self, value):
19         tmp = value.split(-)
20         if int(tmp[0]) < int(tmp[-1]):
21             nums = range(int(tmp[0]), int(tmp[-1])+1)
22             return str(nums)
23         else:
24             return u请检查传入的参数
25 
26     # 把类似[1,2,3]这样的列表转换成/1-3/这种url
27     def to_url(self, value):
28         min = value[0]
29         max = value[-1]
30         temp = %s-%s % (min, max)
31         return temp
32 
33 app.url_map.converters[num] = NumConverter
34 
35 @app.route(/login/<num: values>/)
36 def numList(values):
37     return values
38 
39 if __name__ == __main__:
40     app.run()

 

flask第二十一篇——练习题

标签:nbsp   sel   main   bsp   list   flask   return   run   split   

原文地址:https://www.cnblogs.com/captainmeng/p/8718440.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!