본문 바로가기
airbnb clone coding

[Django] 9_2. URLs and Views: render / Django Templates / DoesNotExist / Django vs. React

by busybee-busylife 2024. 7. 16.
반응형

(flask 기본 지식이 필요하다)

 

템플릿을 렌더링하는 방법

유저에게 HTML을 보여주는 방법 

DB의 데이터를 HTML에 넣는 방법 

 

Rendering

: 데이터를 사용자가 볼 수 있는 형태로 시각화하는 과정 

 

view 함수가 HTTP요청을 처리

-> 데이터베이스에서 필요한 데이터를 가져와 이를 HTML 템플릿에 전달

-> 최종 HTML 문서를 생성 

 

1) View 함수 정의 

 

 

2) template 파일(.html 확장자) 작성

rooms > templates 폴더 생성(이름 변경하면 안된다!)

rooms > templates > all_rooms.html 파일 생성 

 

 

🤜  미션: 템플릿에서 각 방을 표시하기  🤛

 

 

🤜  미션: 링크 추가하기  🤛

 

 

DoesNotExist

rooms > urls.py 의 urlpatterns 에서 rooms/ 뒤에 int가 오면 see_one_room 함수를 실행하도록 경로 지정 

-> 해당 id의 room을 DB에서 찾는다 

-> 그 DB를 템플릿으로 렌더링한다 

 

 

이때, DB에 존재하지 않는 int가 입력되면 DoesNotExist 에러발생

-> rooms > views.py의 see_one_room 함수에서 try except 구문으로 감싸기 

 

 

🤷‍♂️ 사실은 위 모든 템플릿을 사용하지 않을 것이다 🤷‍♂️

프론트에서는 django가 아니라 React를 사용

반응형