1,什麼是鉤子函式?
就是執行別人前都得先執行他:
fromflask import flask'/
')def hello_world():
return
'hello world!
'def bf():
print(
"執行任何程式前都要先執行我,哈哈!")
if __name__ == '
__main__
':
2,應用在哪?
fromflask import flask,render_template,g,url_for,request,redirect,session
import os
'secret_key
'] = os.urandom(24)'
/')def hello_world():
# print(
"index")
return
'index!''
/login/
' ,methods=['
get','
post'])
def login():
# print(
"login")
if request.method == "
get"
:
return render_template('
login.html')
else
: username = request.form.get('
username')
password = request.form.get('
password')
if username == "
1" and password == "1"
: session[
'username
'] = "1"
return
'success to login in!
'else
:
return redirect(url_for('
login'))
'/edit/')
def edit():
##1和 #2都是一樣的意思,但是1更方便,hasattr() 函式用於判斷物件是否包含對應的屬性。
if hasattr(g,'
username
'): #1
# if session.get('
username
') == "
1": #2
return
'success to edit
'else
:
return redirect(url_for('
login'))
# before_request:在請求之前執行的,在檢視函式執行之前執行的。
# before_request只是乙個裝飾器,他可把要設定為鉤子函式的**放到檢視函式執行之前來執行。
def my_before_request():
print('hw
')# 有username證明使用者是登陸狀態
if session.get('
username'):
g.username = session.get('
username
') #g?# 相當於在每乙個檢視函式(如『/』,/login/執行前都會執行這個函式。)
if __name__ == '
__main__
':
失業日記 10月10日
10月10日 晴 週六 半夜醒來一次,聽到外面嘩啦啦的響聲,好像下雨了,我很好奇,難道現在下雨了嗎?雖然可能快到雨季了,但是這個時候不應該下雨啊,於是我坐起來到床邊窗戶看看是否真的下雨了,借助路燈,仔細看了看外面的地面,都很幹,沒下雨,於是向四周望一望,到處的樹葉都在抖動,隔壁的公寓區院子裡乙個很高...
10月10日 繼續加油!
10月10日 dns解析過程 1 瀏覽器先檢查自身快取中有沒有這個網域名稱對應的ip位址,如果有,解析結束。2 如果瀏覽器快取中沒有,檢查作業系統快取中有沒有對應的結果。而作業系統也有乙個網域名稱解析的過程。在windows中可通過c盤裡乙個hosts檔案來設定,如果你在這裡指定了乙個網域名稱對應的...
vmware10 win10安裝記錄
當然是用vmware啦 當然是選擇原諒 然而下了vm12的版本並跑不起來,大概是450的錯吧 嘆 然後就下了個10,嘛,反正能用就行啦 然後問題就來了,下映象呢?ms官網上都沒怎麼找到,於是網上搜部落格,發現了乙個掛映象的 後面 裡面好像挺多微軟系的軟體的,嘛,如果以後有用到第二次的話就給你錢!然後...