10 flask之add_url_rule参数

@app.route和app.add_url_rule参数:

1 rule

URL规则

2 view_func

视图函数名称

3 defaults = None,

默认值, 当URL中无参数,函数需要参数时,使用defaults = {'k': 'v'}

为函数提供参数

4 endpoint = None

名称,用于反向生成URL,即: url_for('名称')

5 methods = None,

允许的请求方式,如:["GET", "POST"]

6 strict_slashes = None

对URL最后的 / 符号是否严格要求

@app.route('/index', strict_slashes=False)
#访问http://www.xx.com/index/ 或http://www.xx.com/index均可
@app.route('/index', strict_slashes=True)
#仅访问http://www.xx.com/index

7 redirect_to = None,

重定向到指定地址

@app.route('/index/<int:nid>', redirect_to='/home/<nid>')

8 subdomain = None

子域名访问

 #C:\Windows\System32\drivers\etc\hosts
    127.0.0.1       www.liuqingzheng.com
	127.0.0.1       admin.liuqingzheng.com
	127.0.0.1       buy.liuqingzheng.com
    
    from flask import Flask, views, url_for
    app = Flask(import_name=__name__)
    app.config['SERVER_NAME'] = 'liuqingzheng.com:5000'
    @app.route("/", subdomain="admin")
    def static_index():
        """Flask supports static subdomains
        This is available at static.your-domain.tld"""
        return "static.your-domain.tld"
    #可以传入任意的字符串,如传入的字符串为aa,显示为 aa.liuqingzheng.com
    @app.route("/dynamic", subdomain="<username>")
    def username_index(username):
        """Dynamic subdomains are also supported
        Try going to user1.your-domain.tld/dynamic"""
        return username + ".your-domain.tld"
    if __name__ == '__main__':
        app.run()
        
    访问:
    http://www.liuqingzheng.com:5000/dynamic
    http://admin.liuqingzheng.com:5000/dynamic
    http://buy.liuqingzheng.com:5000/dynamic
posted @ 2022-03-22 23:15  甜甜de微笑  阅读(628)  评论(0编辑  收藏  举报