-
[Django] 기본적인 View 만들기NAN/웹 어플리케이션 2021. 7. 4. 17:09728x90
python manage.py startapp ' '
view 요약
- python manage.py startapp appname으로 account 폴더 생성
- 새로 만들어진 파일은 기존 파일이 인식하지 못하기 때문에 인식 시켜줘야한다.
- 기존 폴더 settings.py 진입 후 Installed_apps에 생성된 account 폴더 입력
- 인식시켰다면 appname - views.py를 통해 실제 화면에 출력하고자 하는 요소 입력
- 여기서는 hello_world(request)라는 함수를 만들고 HttpResponse를 반환하게 설정했다.
- ############# view 만들기 완료 #############
urls 요약
- 특정 주소를 통해 만들어둔 view를 볼 수 있게 작업을 해줘야 한다.
- 기존 폴더 - urls.py 진입
- urlpatterns = [path('account/', include('accountapp.urls'))] 입력
- 빨간 밑 줄은 alt enter로 해결
- appname 폴더에는 아직 urls.py 파일이 없기 때문에 urls 파일 생성
- app_name = "accountapp" 입력
- urlpatterns = [
path('hello_world/', hello_world, name = 'hello_world')
] 입력 - ############# urls 만들기 완료 #############
python manage.py startapp accountapp : accountapp 폴더가 생성된다.
이 파일을 새롭게 만들었다면 기존에 만들어둔 파일에 생성한 파일을 인식시켜줘야 한다.
기존 폴더 - settings.py 진입 - Installed_apps에 만든 폴더 추가
새로 만든 폴더 인식 추가했다면 accountapp - views.py를 통해 원하는 view를 만든다.
hello_world라는 함수를 만들고 HttpResponse를 반환 하게 설정했다. 함수를 만들고 받는 인자는 요청을 받아서 돌려주기 때문에 request를 입력하고, return을 통해 HttpResponse를 돌려준다.
파이참에서는 위와 같이 빨간 밑 줄이 나온 경우 alt + enter를 통해 바로 import 할 수 있다.
alt+enter 위의 과정은 단순히 view를 만든 것이고, 특정 주소를 들어갔을 때 만든 뷰를 볼 수 있게 만들어줘야 한다.
기존 폴더 - urls.py 진입
path('account/', include('accountapp.urls')) path('account/')를 입력해야 앱으로 접근할 수 있다 (슬레쉬 필수)
include('accountapp.urls') 어카운트 앱 내부에 있는 urls.py를 모두 포함해 하위 디렉터리로 분기를 해라는 구문
이렇게 구문을 작성했다면, accounapp 내부에는 아직 urls.py가 없기 때문에
accountapp 오른쪽 클릭 - new - pythonfile을 누르고 이름을 urls로 지정하여 만들어준다.
이후 새롭게 만든 urls.py에도 기존 urls 파일처럼 urlpatterns를 입력해 줘야 하는데,
urlpatterns = [ path ]까지 입력 후 구문이 존재하지 않는다는 경고가 나오면 다시 alt enter를 통해 구문 불러오기
빨간 경고줄 path까지 작성한 후 알트 엔터 - import this name-from django.urls import path 선택
path 구문 안에는 view에서 만들었던 함수에 접근해야 하기 때문에 만들어뒀던 함수 이름 'hello_world'입력
hello_world/ 옆에 또 한 번 반복 한 이유는 라우트와 view를 설정해야 하기 때문이다
name = route에 대한 이름 설정 app_name = 이를 쓰는 이유는 경로 접근에 용이하게 하기 위해서
이 과정을 마무리하고 python manage.py runserver 명령어를 통해 만들어진 url에 진입하면
아래와 같은 사이트가 생성된 것을 볼 수 있다.
'NAN > 웹 어플리케이션' 카테고리의 다른 글
Django 개발 패턴 (0) 2021.08.31 [Django] Git 소개 / 설정 (0) 2021.07.05 [Django] 개발 환경 셋업 with Pycharm (0) 2021.07.04