中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

flask中route裝飾器是什么

發布時間:2020-08-07 11:05:16 來源:億速云 閱讀:174 作者:小新 欄目:編程語言

小編給大家分享一下flask中route裝飾器是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

flask裝飾器route實現路由功能理解

利用裝飾器的方式實現了路由函數,這是一個十分簡單清晰的結構,而這個功能的實現,有著很大的學習意義

@appweb.route('index',methods=['GET','POST']
def static1():
    return render_template('index.html')

看代碼可以知道,通過appweb.route裝飾了static1()函數,使其成為了路由函數

解析route裝飾器源代碼

def route(self,rule,**options):

    def decorator(f):
        endpoint = options.pop('endpoints',None)
        self.add_url_rule(rule,endpoint,f,**options)
        return f
    return decorator

Flask實例的主要路由功能就是這個route函數,而route函數源代碼可以看出,是一個3層嵌套的裝飾器(route函數內部還有個裝飾器)

三層嵌套裝飾器的語法糖規則

@appweb.route('index',methods=['GET','POST'])
def static1():
    return render_template('index.html')
#等于
static1 = appweb.route('index',methods=['GET','POST'])(static1)

上面的route函數,實際上是返回一個decorator,這個decorator函數裝飾static1函數成為路由函數

route函數的功能是提供rule參數和其他的字典鍵對值參數(**options)

self.add_url_rule是關鍵的函數,它將f參數(即static1())裝飾成路由函數,最后return f

關于add_url_rule函數,從更深的源碼可知,默認方法為GET,將rule(即'/index')作為網址注冊進了路由,大部分的參數都在options字典中,目前我已知的參數有methods=,endpoints=,view_func=等。

以上是flask中route裝飾器是什么的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

苏尼特左旗| 读书| 萨嘎县| 卢氏县| 沂源县| 昭平县| 建宁县| 同江市| 贵南县| 沾益县| 施秉县| 泗阳县| 蒲江县| 锡林浩特市| 灵武市| 长宁区| 咸阳市| 浑源县| 临颍县| 五华县| 吴川市| 崇左市| 洛川县| 科技| 体育| 朝阳区| 清原| 天津市| 静乐县| 昔阳县| 缙云县| 浑源县| 武安市| 灵台县| 兴宁市| 山东省| 曲阜市| 上高县| 拉孜县| 商丘市| 甘德县|