https://bmil2011s.tistory.com/25
장고 프로젝트(맛집 공유 사이트 만들기) 기본 설정 Django Project Restaurant share - 1
ToDoList 만들기 프로젝트를 무사히 마치고, 두 번째 프로젝트인 맛집 공유 사이트 만들기 프로젝트를 시작해보겠다. https://bmil2011s.tistory.com/20 장고 프로젝트 기본 설정 Django Project to do list - 1 오늘
bmil2011s.tistory.com
이번 글에서는 기본 설정 이후 템플릿 및 URL을 설정하도록 하겠다.
1. 템플릿 설정하기
- 먼저 사용하고자 하는 템플릿을 찾아 가져오도록 하자. 이 글에서는 해당 링크(https://github.com/doorBW/Django_with_PracticeExamples/tree/master/project/RestaurantShare)의 템플릿들을 참고하였다.
- 해당 템플릿은 모두 shareRes app에서 사용할 것이므로, shareRes 폴더 안에 teamplates 폴더를 만들고 다시 shareRes 폴더를 만들고 그 안에 템플릿을 넣어주면 된다(아는 형님의, 아는 누님의, 아는 템플릿이오~ㅋㅋ).
추가적으로 파일들의 이름은 아래와 같이 수정해도록 하자
2. urls.py 수정하기
- html 파일을 수정했다면 당연하게 따라오는게 url 설정이라는 것을 이제는 알아야할 것이다. 다음과 같이 수정해주자.
- 이렇게 하면 프로젝트 urls.py 에서 url 별로 각 app 으로 처리를 넘겨준다.
3. 각 app에 urls.py 추가하기
3 -1 sendEmail App
- 먼저 sendEmail 앱에 urls.py를 생성하고 다음과 같이 코드를 입력.
- 이렇게 하면 받은 url 을 views의 sendEmail 함수로 처리를 넘겨주기 때문에 다음으로는 views.py를 수정해주어야한다.
- views.py 코드를 다음과 같이 수정하여 sendEmail 함수를 만들고, HttpResponse 함수를 통해 단순 문자열이 출력되도록하고, 이후에 세부 로직을 구현해주자.(템플릿 등 수정 내용이 많기 때문에 로직이 구현되었는지 먼저 파악한 뒤 세부 조정)
3 -2 shareRes App
- 이전 처럼 각각의 url을 받았을 때, views 파일의 각 함수에서 처리하도록 설정했으므로 다음은 views.py를 수정해주자
- 이전처럼 각 함수들이 작동하는지 알아보기 위한 정도로 다음과 같이 코드를 작성하자.
- 이후 url을 받아 최종적으로 views.py의 함수들이 정상 작동하는지를 확인한다.
- manage.py가 있는 폴더로 이동하여 python manage.py runserver 명령어로 서버에 접속했을 때, 다음과 같이 화면이 확인되면 성공이다.
- 또한 urls.py에서 설정해준 것처럼 예컨대, 127.0.0.1:8000/restaurantDetial에 접속하면 restaurantDetail 문자열이 출력된 화면이 확인되어야 한다.
4. 템플릿 적용하기
- 서버에 접속하기 까지 로직 구현이 잘 된 것을 확인했다면 각 화면을 위해 사전에 준비했던 html 파일들을 연결해주자.
- 다음과 같이 views.py 의 코드를 수정해주면 된다.
- 이후 서버에 접속했을 때, 다음과 같이 화면이 나오면 성공이다.
* 이 글은 Django 한그릇 뚝딱(문범우, 2019)의 챕터 3 "맛집 공유 사이트 만들기" 내용을 참고하였음.
'IT & 개발공부 > 웹개발(HTML, CSS)' 카테고리의 다른 글
장고 프로젝트(맛집 공유 사이트 만들기) - 4 CRUD(맛집정보) Django Project Restaurant share (0) | 2023.08.01 |
---|---|
장고 프로젝트(맛집 공유 사이트 만들기) - 3 CRUD(카테고리) Django Project Restaurant share (0) | 2023.07.31 |
장고 프로젝트(맛집 공유 사이트 만들기) - 1 기본 설정 Django Project Restaurant share (0) | 2023.07.29 |
장고 프로젝트 데이터 처리(CRUD) Django Project to do list - 4 (작동 영상) (0) | 2023.07.28 |
장고 프로젝트 데이터 처리(MVC? MTV?) Django Project to do list - 3 (0) | 2023.07.27 |