[Django] static
<Static>
동적 파일
- 서버의 데이터들이 어느정도 가공된 다음 보여지는 파일
- 상황에 따라 달라질 수 있다.
정적 파일
- 미리 서버에 저장되어 있는 파일
- 서버에 저장된 그대로를 서비스 해주는 파일
정적 파일 종류
- Static : 개발자가 서버를 개발할 때 미리 넣어놓은 정적파일(img, js, css)
- media: 사용자가 업로드 할 수 있는 파일
< static 적용하기 > ex)내 app의 이름이 blog인 경우
1. app에 static이라는 이름의 폴더를 만든다.
2. 사용할 사진들을 static 폴더에 모아 놓는다.
3. settings.py 작업
-1) import os
-2)
STATIC_URL ='/static/'
STATICFILES_DIRS =[ #현재 static 파일들의 위치
os.path.join(BASE_DIR, 'blog', 'static') ]
STATIC_ROOT = os.path.join(BASE_DIR, 'static') #static 파일을 모을 위치
4. static 파일 모으기 위한 명령어를 터미널에서 실행한다.
> python manage.py collectstatic
*static collect 를 하는 이유
- 실 서버를 배포하기 할 때 정적 파일을 편리하게 관리하기 위해 정도로 알아두자
< base.html에 배경으로 static에 있는 사진 적용하기 > ex)사진 파일 명 : likelion.png
1. base.html의 body 태그 내 가장 상단에 {% load static %} 작성
--> static 폴더에 있는 파일들을 load 하기 위해.
2. 원하는 위치에 img 태그 작성
<img src="{% static 'likelion.png'%}" alt="">
- 경로에는 static 폴더에있는 사진의 url인 "{ % static '사진 명' %}"을 작성해준다.