- 정적파일이란? HTML 이외의 웹 페이지를 렌더링 할 때 필요한 추가적인 파일, 서버에 미리 저장되어 있어야 하며 서버에 저장된 그대로 서비스한다
- STATIC 파일 : IMG, JS, CSS처럼 서버를 개발할 때 미리 넣어 준비해 놓은 파일, 서비스 중에 추가나 수정되지 않고 고정되어 있다
- MEDIA 파일 : 사용자가 업로드 할 수 있는 파일
- 동적파일이란? 동적파일은 정적파일과 대비하기 위해 사용하는 용어로 동적 웹페이지라는 말이 정확하다. 동적 웹 페이지란 웹 서버에 있는 Data들을 스크립트에 의해 가동처리 한 후 생성되어 전달되는 웹 페이지 이다
- 정적 파일들을 체계적으로 관리하기 위해 폴더 안에 저장하고, 경로를 지정하여 파일을 관리하는 것
- 파일이 늘어날 경우 파일 경로 관리에 용이하다
- static url 지정
- STATIC_URL은 실제 파일에 접근할 url을 나타내는 것, 즉 STATICFILES_DIRS에 접근할려면 STATIC_URL로 접근해야한다
다른 방법
- load static을 통해 {% static 파일명 %}로도 사용 가능. static의 경로를 불러오겠다는 뜻이다
- RENDER 엔진에서 LOAD STATIC TEMPLATE엔진을 통해 img, css, js등을 {% static '경로' %} 에 대해서 해당 URL을 STATIC_URL+'경로' 경로 방식으로 변환시킨다. 이 변환된 주소를 통해 DIRS의 실제 파일 위치를 참조하여 파일에 접근한다
- static 부분이 자동으로 경로 방식으로 변환된 것을 확인할 수 있다
- 이는 STATIC_URL + java.png로 변환되므로 /static/java.png이다. 이를 이용해 파일의 실제 위치인 DIRS로 이동하여 실제 파일을 가져온다
장고에서는 css,js,img 파일을 정적으로 다룬다. 따라서 Bootstrap 파일에서 asset, css, js 폴더를 static폴더에 가져온다.
html파일은 template 폴더에 넣는다
이후 static으로 css, js, img 파일들을 수정해야한다. 이는 수정하지 않으면 파일 경로를 static 폴더를 참조하라고 나와있지 않기에 404 error가 뜨므로, 이를 방지하기 위해 load static 및 각 구문을 static으로 수정한다