HTMLを表示する際に必要なCSSや、トップページないしヘッダーに表示する画像はStaticとして特定のディレクトリに保存します。
MEDIAディレクトリに保存されるModelの画像項目などとは異なり、データベースに関与することのないファイルのことを指します。
設定方法
settings.py
のあるdjangoプロジェクトのディレクトリにstatic
という名前のフォルダを作成します。
- トップページなどに使用する画像をディレクトリに移動します。
- settings.pyをエディタで開き、標準で
STATIC_URL
が記載されている個所にSTATICFILES_DIRS
とSTATIC_ROOT
を追加します。
STATICFILES_DIRS = [BASE_DIR / 'django_study/static'] # 画像を入れたディレクトリ
STATIC_ROOT = BASE_DIR / 'static'
STATIC_URL = '/static/'
- 以下のコマンドで全アプリのstaticファイルを1か所(
STATIC_ROOT
)に集約します。
python manage.py collectstatic
- Staticファイルを表示するHTMLではStaticファイルをロードしてから使用します。複数ファイルある場合でもロードは1回でOKです。
{% load static %}
<img src="{% static 'w_image.jpg' %}" />