欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

flask框架視圖函數用法示例

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

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

flask框架 視圖函數當中 各種實用情況簡單配置

1 建立連接

2 路由參數

3 返回網絡狀態(tài)碼

4 自定義錯誤頁面

5 重定向

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

7 設置和獲取cookie

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

更多關于Python相關內容可查看本站專題:《Python入門與進階經典教程》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設計有所幫助。

相關文章

  • 一則python3的簡單爬蟲代碼

    一則python3的簡單爬蟲代碼

    最近一直在學習Python,還有網絡爬蟲,于是就想起來把2者結合一下,所以就有了本文。
    2014-05-05
  • python?peewee操作sqlite鎖表的問題分析

    python?peewee操作sqlite鎖表的問題分析

    Peewee是一種簡單而小的ORM,在使用python?orm?框架?peewee?操作數據庫時時常會拋出以一個異常,下面我們就來分享一下具體的原因以及解決辦法吧
    2023-08-08
  • Python序列化模塊JSON與Pickle

    Python序列化模塊JSON與Pickle

    這篇文章介紹了Python的序列化模塊JSON與Pickle,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-06-06
  • python標準庫 datetime的astimezone設置時區(qū)遇到的坑及解決

    python標準庫 datetime的astimezone設置時區(qū)遇到的坑及解決

    這篇文章主要介紹了python標準庫 datetime的astimezone設置時區(qū)遇到的坑及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • 淺談python迭代器

    淺談python迭代器

    這篇文章主要介紹了淺談python迭代器,具有一定參考價值,需要的朋友可以了解下。
    2017-11-11
  • Python實現(xiàn)重建二叉樹的三種方法詳解

    Python實現(xiàn)重建二叉樹的三種方法詳解

    這篇文章主要介紹了Python實現(xiàn)重建二叉樹的三種方法,結合實例形式分析了Python重建二叉樹的實現(xiàn)方法、操作技巧與注意事項,需要的朋友可以參考下
    2018-06-06
  • Python爬蟲包BeautifulSoup異常處理(二)

    Python爬蟲包BeautifulSoup異常處理(二)

    這篇文章主要為大家詳細介紹了Python爬蟲包BeautifulSoup的異常處理,具有一定的參考價值,感興趣的朋友可以參考一下
    2018-06-06
  • python實現(xiàn)單張圖像拼接與批量圖片拼接

    python實現(xiàn)單張圖像拼接與批量圖片拼接

    這篇文章主要為大家詳細介紹了python實現(xiàn)單張圖像拼接與批量圖片拼接,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Python中os和shutil模塊實用方法集錦

    Python中os和shutil模塊實用方法集錦

    這篇文章主要介紹了Python中os和shutil模塊實用方法集錦,需要的朋友可以參考下
    2014-05-05
  • Django模板中變量的運算實現(xiàn)

    Django模板中變量的運算實現(xiàn)

    這篇文章主要介紹了Django模板中變量的運算,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04

最新評論