《Flask web development》 3.3自定义错误页面
@app.errorhandler(404) def page_not_found(e): return render_template('404.html'), 404
使用errorhandler装饰器,其中page_not_found(e)是继承与e的子类么?这个e代表的是什么意思?
走同样的路,发现不同的人生
從定義來看,e是page_not_found的參數,e可能是Exception的實例, 可以用type(e)來辨識。
你試試不寫e不就知道了嗎,基礎不紮實啊。 。 。
我也看到這個地方了。從這個中文文檔看到
一個錯誤處理器是一個類似視圖函數的函數,但是它在錯誤發生時被執行,並且錯誤被當成一個參數傳遞進來。一般來說錯誤可能是 HTTPException , 但是在有些情況下會是其他錯誤: 內部伺服器的錯誤的處理器在被執行時,將會同時得到被捕捉到的實際代碼錯誤作為參數。
這個小e可以是HTTP引發的錯誤,也可以是其他造成的錯誤(謝謝答主的提醒)。
e 是一個 error 對象, 出錯後的資訊保存在這個變數裡,類似:
try: eat() except Exception as e: print(e)
從定義來看,e是page_not_found的參數,e可能是Exception的實例, 可以用
type(e)來辨識。
你試試不寫e不就知道了嗎,基礎不紮實啊。 。 。
我也看到這個地方了。從這個中文文檔看到
這個小e可以是HTTP引發的錯誤,也可以是其他造成的錯誤(謝謝答主的提醒)。
e 是一個 error 對象, 出錯後的資訊保存在這個變數裡,類似: