반응형
우리도 가끔 보는 404에러
존재하지 않는 페이지에 접속하면 저 화면을 볼 수 있다.
만약 question_id에 312398등의 존재하지 않는 값을 넣어서 전달하면 404에러가 나타난다.
우리는 이 404를 좀 더 프로페셔널하게 다뤄보자.
#pybo/views.py
from django.shortcuts import render, get_object_or_404 # 404일 경우
from django.http import HttpResponse # http의 응답
from .models import Question
from django.utils import timezone
# Create your views here.
# 응답 꾸러미들
...
def detail(request,question_id):
'''
pybo 내용 출력
'''
question = get_object_or_404(Question,pk=question_id)
context = {'question':question}
return render(request,'pybo/question_detail.html',context)
...
get_object_or_404를 import해주고, Question과, pk=question_id를 인자로 넣어주고 question에 할당해준다.
pk에 해당하는 값이 Question에 없으면 404를 보내준다.
반응형
'python > Django' 카테고리의 다른 글
[Django] 8. 답변기능 구현 (0) | 2021.12.23 |
---|---|
[Django] 7. URL 네이밍하기 (0) | 2021.12.23 |
[Django] 6. 장고 템플릿 구현 (0) | 2021.12.22 |
[Django] 5. 장고 Admin 활용 (0) | 2021.12.22 |
[Django] 4. 장고 셸을 이용해 데이터 만들기 (0) | 2021.12.21 |