mtv框架
總結:使用mvc或mtv就是為了解耦,可以提高開發維護的效率。
安裝:pip install flask
# 無參路由def index():
return ''
# 帶參路由,可以傳遞多個引數
def welcome(name, uid):
return 'hello {} {}'.format(name, uid)
# 指定引數型別,如:str(預設)、int、float、path
def user(uid):
return 'hello {}號'.format(uid)
# path型別:型別仍然是str,只是將'/'當做普通字元處理而已
def path(p):
return p
1.路由末尾的'/'建議都加上,防止出現路由多敲'/'出現的問題請求(request)2.若需要路由引數,引數需要放在<>中,對應的檢視函式需要同名的引數
3.路由引數可以指定多個,也可以指定型別
4.常用引數型別:str(預設)、int、float、path,使用時放在引數前面,使用':'與引數連線
5.path型別其實是str型別,只是將'/'作為普通字元處理罷了。
from flask import request響應(response)# 請求,request中存放了所有的http請求資訊
def req():
# 完整的路由位址
# return request.url
# 不包含get引數的路由位址
# return request.base_url
# 只有協議主機和埠
# return request.host_url
# 只包含裝飾器中的路由位址
# return request.path
# 請求方法的型別:get、post
# return request.method
# 客戶端的ip
# return request.remote_addr
# args:get引數;form:post引數;values:get和post
# return request.args.get('uid', '預設值')
# headers:所有的請求頭資訊
return request.headers.get('user-agent')
from flask import make_response重定向(redirect)# 響應response
def response():
# 直接返回字串
# return 'ok'
# 可以在返回時指定狀態碼,預設都是200
# return 'page not found', 404
# 先用專門的函式構造乙個響應物件,可以指定內容及狀態碼等
resp = make_response('我是通過函式構造的響應', 404)
# 設定響應頭資訊
resp.headers['uid'] = 250
return resp
from flask import redirect, url_for反向構造路由(url_for)# 重定向
def old():
# return '原來的資料'
# return redirect('/new/')
# 根據檢視函式名反向構造路由位址,引數是檢視函式名
# return url_for('new')
return redirect(url_for('new'))
def new():
return '新的資料'
# 反向構造路由終止及錯誤定製def urlfor():
# 不帶引數的路由
# return url_for('new')
# 可以構造帶參的路由,多出來的引數以get形式傳遞
# return url_for('user', uid=250, name='cuihua')
# 構造完整(帶協議主機和埠)路由,可以進行外部跳轉
return url_for('user', uid=250, name='cuihua', _external=true)
# 終止abortdef err():
# 終止**執行,其實是向系統丟擲指定異常
# 系統捕獲異常,按照統一的方案進行處理
abort(404)
return '正常'
# 定製錯誤顯示
def page_not_found(e):
return '是不是搞錯了大哥?'
# 匯入類庫from flask import blueprint, url_for
# 建立物件,可以指定統一的字首
user = blueprint('user', __name__, url_prefix='/user')
# 新增檢視函式
@user.route('/login/')
def login():
# 當反向構造同一藍本中的路由時,藍本名可以省略,但是不能省略'.'
return url_for('.register')
return '歡迎登入'
@user.route('/register/')
def register():
return '歡迎註冊'
基本概念 C 基本概念
由於工作中需要用到c 編寫的一些工具,有時候需要根據需求修改或者定製工具,所以現在不得不學習一下c 的基礎語法,此為筆記,不成章法!機器語言 組合語言 高階語言 面向過程的程式設計方法 物件導向的程式設計方法 泛型程式設計方法 1 演算法設計 2 源程式編輯 3 編譯 4 連線 5 執行除錯 輸入裝...
基本概念 數控系統基本概念
第一章 基本概念 數控工具機cnc是一種按事先編制好的加工零件程式進行加工的高效 自動化加工裝置。是 computer numerical control machine tools 的簡稱。數控工具機較好地解決了複雜 精密 小批量 多品種的零件加工問題,是一種柔性的 高效能的自動化工具機。西門子系...
XSLT基本概念
我們首先來澄清乙個概念,大家可能聽說過xsl extensible stylesheet language xsl和我們這裡說的xslt從狹義上理解是一樣的,而按照w3c的標準,xslt的說法更嚴格些,因此我們在文章中統一使用xslt的稱法。它們之間具體的關係我們會在下面講述。1.1 什麼是xslt...