관리 메뉴

Storage Gonie

37. (app2) 정적파일 적용 및 관리 본문

웹개발/Django 웹서비스 개발(인프런)

37. (app2) 정적파일 적용 및 관리

Storage Gonie 2019. 2. 20. 19:36
반응형

# 가벼운 정적파일 적용

1. polls아래에 static 폴더를 만들고 그 아래에 다시 polls폴더를 만들고 그 아래에 style.css 파일을 생성한다.

- polls/static/polls/style.css

- 코드는 아래것 복붙.

a {
color: red;
text-decoration: none;
}

body {
background: white url("images/bg.png") no-repeat right bottom;
}

2. 사진 하나의 이름을 bg.png로 저장하고 polls/static/polls/ 아래에 images 폴더를 만들어 그 아래의 위치에 저장한다.

- polls/static/polls/images/bg.png

- 위의 css에서 사진파일의 경로를 images 폴더 아래에 있는 것으로 지정해 주었으므로


3. index.html에 style.css를 링크

- 정적파일을 사용할 때는 <% load static %>을 해준뒤 링크를 해줘야 한다.

{% load static %}
<link rel="stylesheet" type="text/css" href="{% static 'polls/style.css' %}">


여기까지만 해도 정적파일을 이용해 실행 잘됨.



# 정적파일 관리를 위한 collectstatic

- 현재는 필요성을 못느낄 수 있지만 배포할 때는 정적파일(css, font, img 등)을 관리할 필요가 있기 때문에 이를 한군데에 묶어주는 아래의 작업이 필요하다. 그것이 collectstatic.


1. settings.py에서 맨 아래라인에 STATIC_ROOT 추가

STATIC_ROOT = os.path.join(BASE_DIR, 'static') # BASE_DIR : polls디렉토리, polls디렉토리 바로 아래에 static 폴더를 생성해서 정적파일 관리

2. python manage.py collectstatic, yes

- polls/ 에 static 폴더가 생성되고 그 안에는 사용되는 모든 정적파일들이 모여있음.



반응형
Comments