国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Django 自定義404 500等錯誤頁面的實現

瀏覽:15日期:2024-10-23 10:52:13

在開發網站的過程中,404,500錯誤,是不可避免產生的。一旦產生了這種錯誤,很多可以通過web server 來處理。比如使用 apache 的定義或者nginx 的定義。都可以定向處理。如果單純在django里面可以處理嗎?肯定是可以的,django提供了相應的處理方式,只要在django里

起步

面定義了,無論你今后部署在apache下或者是nginx下,都是生效的。

要想自定義錯誤頁面,需要關閉調試模式 DEBUG = False ,因為調試模式的錯誤頁面是開發下會顯示錯誤信息的。

有兩種方法可以實現自定義的錯誤頁面。

方法一:創建特定命名的模板文件

這是一種非常簡單的方式。在項目模板文件夾 templates 中創建命名為 404.html 的模板文件即可。

這個方式是其實是借用了 Django 的模板查找規則進行的。源碼在 django.views.defaults.py 中:

ERROR_404_TEMPLATE_NAME = ’404.html’def page_not_found(request, exception, template_name=ERROR_404_TEMPLATE_NAME): ...

總的來說,方法一不需要設路由,只要新建規定名稱的模板就能生效了。

方法二:設置句柄

如果需要更個性化的錯誤頁面,不需要拘泥于特定的模板文件名,可以重新設置句柄,具體是在 urls.py 中設置:

# urls.pydef page_not_found(request, exception): return render(request, ’your_404_filename.html’)handler404 = page_not_foundurlpatterns = [ ...]

除了能捕獲不存在路由地址,還能捕獲視圖中 raise Http404(’message’) 拋出的異常。

哪些錯誤頁面可以配置

具體能自定義錯誤頁面的有 4 中狀態碼:

# django.views.defaults.pyERROR_404_TEMPLATE_NAME = ’404.html’ERROR_403_TEMPLATE_NAME = ’403.html’ERROR_400_TEMPLATE_NAME = ’400.html’ERROR_500_TEMPLATE_NAME = ’500.html’# django.conf.urls.__init__.pyhandler400 = defaults.bad_requesthandler403 = defaults.permission_deniedhandler404 = defaults.page_not_foundhandler500 = defaults.server_error

到此這篇關于Django 自定義404 500等錯誤頁面的實現的文章就介紹到這了,更多相關Django自定義404 500錯誤頁面內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Django
相關文章:
主站蜘蛛池模板: 百色市| 南宫市| 香港 | 东兰县| 民和| 灯塔市| 得荣县| 鹤峰县| 平度市| 兴宁市| 许昌市| 定州市| 卢氏县| 清水县| 虹口区| 治多县| 比如县| 唐海县| 集安市| 饶河县| 来凤县| 靖西县| 寿宁县| 大邑县| 海口市| 金寨县| 钟祥市| 康平县| 怀柔区| 乌苏市| 榆林市| 宣威市| 巨野县| 西乡县| 年辖:市辖区| 布拖县| 邢台市| 民勤县| 大理市| 南皮县| 客服|