사용자가 사이트에 접속했을 때 처음으로 보여주는 페이지를 만듬
룩앤필을 위해 CSS, Javascript를 추가할 수 있음
제목
메뉴
본문
바닥글
URL 패턴
뷰 이름
뷰가 처리하는 내용
/
HomeView(TemplateView)
home.html 템플릿을 보여줌
/bookmark/
2장과 동일
/blog/
3장과 동일
/admin
2장과 동일
작업 순서
관련 명령/파일
필요한 작업 내용
뼈대 만들기
startproject
(2장에서 이미 완료했으므로 생략)
settings.py
migrate
createsuperuser
startapp
(앱 생성 없으므로 생략)
settings.py
모델 코딩하기
models.py
(테이블 생성은 없으므로 생략)
admin.py
makemigrations
migrate
URLconf 코딩하기
urls.py
루트(/) URL 정의
뷰 코딩하기
views.py
HomeView 작성
템플릿 코딩하기
templates 디렉터리
home.html 작성, 상속 기능 적용
그외 코딩하기
static 디렉터리
화면 디자인을 위해 css 작성
테이블 변경 사항이 없으므로 URLconf 코딩부터 진행함
path ('' , HomeView .as_view (), name = 'home' ),
다음과 같이 한줄을 추가함
루트 url에 대해 HomeView 뷰에서 처리함
이 뷰는 프로젝트와 관련된 뷰이므로 mysite/views.py에 작성함
from django .views .generic .base import TemplateView
# Create your views here.
# TemplateView
class HomeView (TemplateView ):
template_name = 'home.html'
링크
처럼 template_name 속성을 통해 템플릿 파일 설정
템플릿도 마찬가지로 프로젝트와 관련된 것이므로 프로젝트 템플릿 디렉터리에 생성함
프로젝트 템플릿 디렉터리는 settings.py에서 다음과 같이 정했음
TEMPLATES = [
...
'DIRS ': [os.path.join(BASE_DIR, ' templates ')], # 수정
...
]
4.2.6 스타일시트 코딩하기 - base.css
프로젝트 템플릿 디렉터리처럼 정적(static)파일도 특정 디렉터리에 저장함
이것 또한 settings.py에서 다음과 같이 정했음
STATICFILES_DIRS = [os .path .join (BASE_DIR , 'static' )] # 추가
└─ch2
├─blog
│ ├─migrations
│ │ └─__pycache__
│ ├─templates
│ │ └─blog
│ └─__pycache__
├─bookmark
│ ├─migrations
│ │ └─__pycache__
│ ├─templates
│ │ └─bookmark
│ └─__pycache__
├─mysite
│ └─__pycache__
├─static
│ └─css
└─templates
4.2.7 템플릿 코딩하기 - home.html
이미지 추가하기
settings.py에서 다음과 같이 추가했음
STATIC_URL = '/static/'
STATICFILES_DIRS = [os .path .join (BASE_DIR , 'static' )] # 추가
{% static %} 템플릿 태그 기능에 의해 STATICFILES_DIRS 디렉터리 하위에서 img/django-actor-big.jpg 파일을 찾음
4.2.8 스타일시트 코딩하기 - home.css
div#content_home, div#homeimg 추가
부트스트랩을 이용하면 더 고급스러운 웹 페이지를 만들 수 있다.