Django 사용자 정의 - 404페이지

2040 단어
사용자 정의 오류 페이지
일반적인 오류 페이지
  • 400 bad request
  • 403 HTTP Forbidden
  • 404 page not found
  • 500 server error

  • 사용자 정의 오류 페이지
  • setting DEBUG=True를 설정하면 Django는 기본 오류 페이지를 표시합니다. 사용자가 정의해야 하기 때문에 DEBUG=False로 변경합니다. 이 때 프로젝트를 시작하면 알림이 나타납니다: CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False. DEBUG=True, ALLOWEDHOSTS는 ['localhost','127.0.0.1','[:1]'], DEBUG=False를 검증하고 ALLOWED 를 작성해야 합니다.HOSTS. ALLOWED 지정HOSTS=['*']하면 됩니다
  • 컴파일 오류 처리view
  • def page_not_found(request):
            from django.shortcuts import render_to_response
            response = render_to_response('404.html', {})
            response.status_code = 404
            return response
    def page_error(request):
            from django.shortcuts import render_to_response
            response = render_to_response('500.html', {})
            response.status_code = 500
            return response
    def method_not_allowed(request):
            from django.shortcuts import render_to_response
            response = render_to_response('403.html', {})
            response.status_code = 403
            return response
    def bad_request(request):
            from django.shortcuts import render_to_response
            response = render_to_response('400.html', {})
            response.status_code = 400
            return response
  • url 맵 설정
  • handler400 = 'app_name.views.bad_request'
    handler404 = 'app_name.views.page_not_found'
    handler500 = 'app_name.views.page_error'
    handler403 = 'app_name.views.method_not_allowed'
  • 페이지를 만들면templates에 해당하는 error를 만듭니다.html 다음은 제 공익 404페이지 설정
  • 
    
        
            
              404  
        
        
            
        
    

    전재 대상:https://www.cnblogs.com/wj5633/p/7072027.html

    좋은 웹페이지 즐겨찾기