-
생성 명령어
C:\Prj1> py manage.py startapp App1
생성된 결과물
App1/ __init__.py admin.py apps.py migrations/ __init__.py models.py tests.py views.py
테스트용 출력
views.py를 열어 아래와 같이 입력하면 간단한 출력 기능을 하게 된다.
from django.http import HttpResponse def index(request): return HttpResponse("Hello, world~")
이것을 호출 할 수 있도록 url을 연결해줘야 한다. URLconf를 사용한다.
URLconf 사용
App1/urls.py파일을 만들어 아래 내용을 입력
from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), ]
Prj1/urls.py파일을 열어 아래 내용을 입력
from django.contrib import admin from django.urls import include, path urlpatterns = [ path('App1/', include('App1.urls')), path('App2/', include('App1.urls')), path('admin/', admin.site.urls), ]
이제 index 뷰가 URLconf에 연결되었고 웹페이지 접속하여 확인해 볼 수 있다.
Django는 요청된 URL을 찾을 때까지 urlpatterns 의 첫 번째 패턴부터 시작하여, 일치하는 패턴을 찾을 때 까지 각 패턴과 리스트의 순서대로 비교해 나간다.
include() 함수는 다른 URLconf들을 참조할 수 있도록 도와줍니다. Django가 함수 include()를 만나게 되면, URL의 그 시점까지 일치하는 부분을 잘라내고, 남은 문자열 부분을 후속 처리를 위해 include 된 URLconf로 전달합니다.
include()에 숨은 아이디어 덕분에 URL을 쉽게 연결할 수 있습니다. App1 앱에 그 자체의 URLconf(App1/urls.py)가 존재하는 한, "/App1/", 또는 "/app2/", "/content/app3/"와 같은 경로, 또는 그 어떤 다른 root 경로에 연결하더라도, 앱은 여전히 잘 동작할 것이다.서버 실행하여 확인
C:\Prj1>py manage.py runserver
http://127.0.0.1:8000/App1/
http://127.0.0.1:8000/App2/
둘다 동일한 동작을 하도록 연결시켰다.'Django' 카테고리의 다른 글
Django - 관리자 계정 만들기 (admin) (0) 2020.08.18 Django - Db Table 읽고 쓰기 (0) 2020.08.18 Django - App 개요 (0) 2020.08.18 Django LTS version (0) 2020.08.18 Django - Db(데이터베이스) Table 생성 (0) 2020.06.11 Django - 프로젝트(Project) 생성 (0) 2020.06.11 Django 설치 (0) 2020.06.11 Django 개요 (0) 2020.06.11