[파이썬][Django] 정적 파일 서빙 및 설정 방법과 예제

Django에서 정적 파일을 서빙하고 설정하는 방법과 예제를 설명하겠습니다. 정적 파일은 CSS, JavaScript, 이미지 및 기타 웹 자산을 제공하는 데 사용됩니다.

정적 파일 서빙 설정

  1. Django 설정 파일 (settings.py) 수정:

    settings.py 파일에서 정적 파일 관련 설정을 확인하고 수정합니다.

# settings.py
    
    # 정적 파일 디렉토리 경로 설정
    STATIC_URL = '/static/'
    STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
    
    # 개발 중에는 DEBUG 모드에서만 사용
    if DEBUG:
        STATICFILES_DIRS += [os.path.join(BASE_DIR, 'your_additional_static_folder')]
    
    # 프로덕션 환경에서는 웹 서버 (예: Nginx)를 통해 제공하는 것을 고려
-   `STATIC_URL`: 정적 파일을 불러올 때 사용하는 URL 경로입니다.
-   `STATICFILES_DIRS`: 정적 파일이 저장된 디렉토리 경로를 설정합니다.
-   `DEBUG`: 개발 중인 환경에서만 정적 파일을 Django에서 서빙하도록 설정합니다. 2.  **URL 패턴 설정 (urls.py)**:

`urls.py` 파일에 정적 파일을 서빙하는 URL 패턴을 추가합니다.
from django.conf import settings
    from django.conf.urls.static import static
    
    urlpatterns = [
        # 다른 URL 패턴들 추가
    ]
    
    if settings.DEBUG:
        urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
위 코드는 개발 환경에서만 동작하도록 설정되어 있습니다.

정적 파일 사용

  1. 정적 파일 디렉토리 생성:

    프로젝트 루트 디렉토리에 static 디렉토리를 생성하고 그 안에 정적 파일 (예: CSS, JavaScript, 이미지)을 배치합니다.

    arduino
    myproject/
    ├── myapp/
    │   ├── ...
    ├── static/
    │   ├── css/
    │   │   ├── styles.css
    │   ├── js/
    │   │   ├── scripts.js
    │   ├── img/
    │   │   ├── image.jpg
    │   │   ├── ...
    
  2. 템플릿에서 정적 파일 사용: ```html



    HTML 템플릿에서 정적 파일을 불러올 때는 `{% static %}` 템플릿 태그를 사용합니다.
    


    
    이미지


```

이제 Django에서 정적 파일을 서빙하고 설정하는 방법을 알았습니다. 이러한 설정을 통해 웹 애플리케이션에서 정적 파일을 효과적으로 관리하고 제공할 수 있습니다. 개발 환경에서는 Django에서 서빙하고, 프로덕션 환경에서는 웹 서버 (예: Nginx)를 통해 제공하는 것이 일반적인 관례입니다.