最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

flask框架視圖函數(shù)用法示例

 更新時間:2018年07月19日 09:54:12   作者:稀里糊涂林老冷  
這篇文章主要介紹了flask框架視圖函數(shù)用法,結(jié)合實(shí)例形式分析了flask框架視圖函數(shù)常見配置與使用技巧,需要的朋友可以參考下

本文實(shí)例講述了flask框架視圖函數(shù)用法。分享給大家供大家參考,具體如下:

flask框架 視圖函數(shù)當(dāng)中 各種實(shí)用情況簡單配置

1 建立連接

2 路由參數(shù)

3 返回網(wǎng)絡(luò)狀態(tài)碼

4 自定義錯誤頁面

5 重定向

6 正則url限制 和 url 優(yōu)化

7 設(shè)置和獲取cookie

#coding:utf8
# 導(dǎo)入flask
from flask import Flask,abort,redirect,make_response,request
from werkzeug.routing import BaseConverter
# Flask 接受一個參數(shù)__name__ 作用是指明應(yīng)用的位置
app = Flask(__name__)
'''
1 建立一個前后臺鏈接
裝飾器的作用是陸游映射到視圖函數(shù)index
訪問根目錄就會進(jìn)入index視圖函數(shù)
'''
@app.route('/')
def index():
  # 返回后會調(diào)用make_response
  return "你好 世界!"
'''
2 給路由傳參數(shù)
傳遞的參數(shù)在<name>當(dāng)中 這個變量名稱也要傳遞給視圖函數(shù)
可以在<int:name> 或者<string:name> 指定傳遞參數(shù)的類型
不指定類型默認(rèn)使用string類型
'''
@app.route('/attr/<string:attr>')
def attr(attr):
  return "hello,%s"%attr
'''
3 返回網(wǎng)絡(luò)狀態(tài)碼的兩種方式
  01 return 字符串,狀態(tài)碼
  02 abort(狀態(tài)碼)
200 成功
300 重定向
404 未找到
500 服務(wù)器內(nèi)部錯誤
'''
#01 return 字符串,狀態(tài)碼 這種方式 可以返回不存在的狀態(tài)碼 前端依然能得到頁面
@app.route('/status')
def status():
  # 用這種方式可以返回假的狀態(tài)碼 前端依然能夠渲染
  return 'hello status',999
#02 利用abort(狀態(tài)碼) 進(jìn)行返回狀態(tài)碼,只能寫入真的狀態(tài)碼
# 這個函數(shù)的作用是 自定義我們項(xiàng)目的 出錯頁面
@app.route('/abort')
def geive500():
  abort(500)
'''
4 捕獲訪問我們flask后臺發(fā)生各種錯誤的情況
  利用@app.errorhandler(500) 進(jìn)行裝飾 能截獲500的response
'''
# 捕獲500異常 函數(shù)當(dāng)中接受到錯誤信息
@app.errorhandler(500)
def error500(e):
  return "您請求的頁面后臺發(fā)生錯誤!錯誤信息:%s"%e
@app.errorhandler(404)
def error404(e):
  return "您訪問的頁面飛去了火星!信息:%s"%e
'''
5 重定向
有兩種方式:
  01 redirect(url)
  02 url_for(視圖函數(shù))
'''
@app.route('/redirect')
def redir():
  return redirect('http://www.baidu.com')
'''
6 url正則
兩個用途: 限制訪問 和 優(yōu)化訪問路徑
使用:
01首先要 定義一個繼承自BaseConverter的子類
  在子類里面調(diào)用父類的初始化方法
  重寫父類的變量
02然后 給applurl_map.converters 字典添加re健 和 我們自己寫的類做val
03最后 視圖函數(shù)的app.route('路徑<re(正則),變量名>')   
  變量名要傳給視圖函數(shù)做參數(shù)
'''
# 01 寫一個繼承自 BaseConverter的子類 相應(yīng)的方法和屬性要重寫
class Regex_url(BaseConverter):
  def __init__(self,url_map,*args):
    super(Regex_url,self).__init__(url_map)
    self.regex = args[0]
# 02 添加re映射
app.url_map.converters['re'] = Regex_url
# 03 正則匹配參數(shù)
# 利用正則對傳入?yún)?shù)進(jìn)行限制
# 只有1到3位小寫英文才能成功 否則都是404
@app.route('/attr2/<re("[a-z]{1,3}"):attr>')
def attr2(attr):
  return "hello %s"%attr
'''
7 設(shè)置cookie 和 獲取 cookie
設(shè)置cookie:
  利用 make_response() 拿到response對象
  response.set_cookie(key,val)
獲取cookie:
  利用request.cookies.get(key) 獲取cookie
'''
# 設(shè)置cookie
@app.route('/set_cookie')
def setCookie():
  response = make_response('設(shè)置cookie')
  response.set_cookie('log','設(shè)置的cookie')
  return response
# 獲取cookie
@app.route('/get_cookie')
def getCookie():
  log = request.cookies.get('log')
  return log
if __name__ == '__main__':
  # 執(zhí)行后臺服務(wù)器
  app.run(debug=True)

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python入門與進(jìn)階經(jīng)典教程》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • 用Python將GIF動圖分解成多張靜態(tài)圖片

    用Python將GIF動圖分解成多張靜態(tài)圖片

    今天給大家?guī)淼氖顷P(guān)于Python的相關(guān)知識,文章圍繞著如何用Python將GIF動圖分解成多張靜態(tài)圖片展開,文中有非常詳細(xì)的介紹,需要的朋友可以參考下
    2021-06-06
  • python中的import、from import及import as的區(qū)別解析

    python中的import、from import及import as的區(qū)別解析

    在Python中,如果import的語句比較長,導(dǎo)致后續(xù)引用不方便,可以使用as語法,這篇文章主要介紹了python中的import、from import以及import as的區(qū)別,需要的朋友可以參考下
    2022-10-10
  • Python更改pip鏡像源的方法示例

    Python更改pip鏡像源的方法示例

    這篇文章主要介紹了Python更改pip鏡像源的方法示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • Python編寫簡單的HTML頁面合并腳本

    Python編寫簡單的HTML頁面合并腳本

    這篇文章主要介紹了Python編寫簡單的HTML頁面合并腳本的相關(guān)資料,需要的朋友可以參考下
    2016-07-07
  • pycharm創(chuàng)建一個python包方法圖解

    pycharm創(chuàng)建一個python包方法圖解

    在本篇文章中小編給大家分享了關(guān)于pycharm怎么創(chuàng)建一個python包的相關(guān)知識點(diǎn),需要的朋友們學(xué)習(xí)下。
    2019-04-04
  • Python基于pygame實(shí)現(xiàn)的font游戲字體(附源碼)

    Python基于pygame實(shí)現(xiàn)的font游戲字體(附源碼)

    這篇文章主要介紹了Python基于pygame實(shí)現(xiàn)的font游戲字體,涉及Python響應(yīng)鍵盤按鍵動態(tài)操作圖片元素的相關(guān)技巧,需要的朋友可以參考下
    2015-11-11
  • python使用箱型圖剔除異常值的實(shí)現(xiàn)方法

    python使用箱型圖剔除異常值的實(shí)現(xiàn)方法

    python中的箱線圖可用于分析數(shù)據(jù)中的異常值,下面這篇文章主要給大家介紹了關(guān)于python使用箱型圖剔除異常值的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • Python中的np.vstack()和np.hstack()詳解

    Python中的np.vstack()和np.hstack()詳解

    這篇文章主要介紹了np.vstack()和np.hstack(),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-04-04
  • Python中如何實(shí)現(xiàn)MOOC掃碼登錄

    Python中如何實(shí)現(xiàn)MOOC掃碼登錄

    這篇文章主要介紹了Python中如何實(shí)現(xiàn)MOOC掃碼登錄,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • Django配置celery(非djcelery)執(zhí)行異步任務(wù)和定時任務(wù)

    Django配置celery(非djcelery)執(zhí)行異步任務(wù)和定時任務(wù)

    這篇文章主要介紹了Django配置celery(非djcelery)執(zhí)行異步任務(wù)和定時任務(wù),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07

最新評論

同仁县| 慈利县| 托里县| 武宣县| 常宁市| 红原县| 长岛县| 桑植县| 丽水市| 宁海县| 兴业县| 高州市| 大田县| 江都市| 乐清市| 股票| 云南省| 绥阳县| 石城县| 宽城| 石河子市| 罗定市| 洪洞县| 习水县| 乌兰浩特市| 陕西省| 沙坪坝区| 政和县| 阿巴嘎旗| 米脂县| 建阳市| 兴文县| 阿克陶县| 永修县| 乃东县| 漳浦县| 马龙县| 和硕县| 仪陇县| 平顺县| 安溪县|