본문 바로가기

Python_WEB/Try_Django

[Django]Handling Dynamic URL Errors

반응형

CodingEntrepreneurs Django 강의 정리

Http404>

HTTP 오류 코드 404와 함께 응용 프로그램의 표준 오류 페이지를 반환한다.

Django가 404를 반환 할 때 사용자 정의 된 HTML을 표시하기 위해 404.html이라는 HTML 템플리트를 작성하여

템플릿 트리의 최상위 레벨에 배치 할 수 있습니다.

이 템플릿은 debug=False인경우에만 반환됩니다.

True 인 경우 Http404에 메시지를 제공 할 수 있으며 표준 404 디버그 템플릿에 나타납니다.

 

views>

from django.http import Http404
from django.shortcuts import render

from .models import BlogPost

# Create your views here.


def blog_post_detail_page(request, post_id):
    # obj = BlogPost.objects.get(id=post_i
    try:
        obj = BlogPost.objects.get(
            id=post_id
        )  # query > database > data > django renders
    except BlogPost.DoesNotExist:
        raise Http404
    except ValueError:
        raise Http404

    template_name = "blog_post_detail.html"

    context = {"object": obj}  # {'title': objecct.title}

    return render(request, template_name, context)
반응형

'Python_WEB > Try_Django' 카테고리의 다른 글

[Django]A New Database Lookup Value  (0) 2020.06.16
[Django]get_object_or_404  (0) 2020.06.15
[Django]Dynamic URL-based Lookups  (0) 2020.06.15
[Django] Model in a View  (0) 2020.06.15
[Django]Model to Django Admin  (0) 2020.06.14