Djangoで静的ファイルを扱う方法
Djangoで静的ファイルを保持するための静的ディレクトリを作成する方法:
- まだ作成されていなければ、Djangoプロジェクトのルートディレクトリにstaticという名前のフォルダを作成します。
- あなたの settings.py ファイルに、Django に静的ファイルの場所を知らせる以下のコードを加えてください。
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]
STATIC_URL は静的ファイルの URL 接頭辞を指定します。一般的には /static/ ですが、STATICFILES_DIRS は静的ファイルが格納されているフォルダーパスの指定に使用されます。ここでは os.path.join 関数を使用してプロジェクトのルートディレクトリと静的ファイルの格納フォルダーを連結しています。
- ネイティブの日本語で言い換えてください。必要なのは1つのオプションだけです。
- {% static ‘path/to/your/static/file’ %}
{% load static %}
<link rel="stylesheet" href="{% static 'css/styles.css' %}">
この部分で、{% static ‘path/to/your/static/file’ %}はDjangoによって正しい静的ファイルのパスに自動的に置き換えられます。
- STATIC_ROOT
- settings.py
- python manage.py collectstatic
開発環境ではDjangoが自動で静的ファイルの配信を行いますが、本番環境では静的ファイルの配信にNginx等のWebサーバを設定する必要があります。