TECH I.S.

Django 静的ファイル収集


静的ファイルの処理

DEBUG = Falseの場合、スタイルシート、JavaScript、画像などのプロジェクト内の静的ファイルは、Djangoでは自動的に処理されません。 DEBUG = Trueの場合は、アプリケーションのstaticフォルダに配置するだけでした。 DEBUG = Falseの場合、静的ファイルを使用するには、静的ファイルを収集して指定されたフォルダーに配置する必要があります。

静的ファイルの収集

プロジェクトに必要なすべての静的ファイルを収集するには、まずsettings.pyファイルでSTATIC_ROOTプロパティを指定します。

これは、静的ファイルを収集するフォルダを指定します。

フォルダには好きな名前を付けることができますが、ここではproductionfilesと呼びます。

my_tennis_club/my_tennis_club/settings.py:
. . STATIC_ROOT = BASE_DIR / 'productionfiles' STATIC_URL = 'static/' . .

このフォルダーを手動で作成し、プロジェクトのすべての静的ファイルを収集してこのフォルダーに入れることもできますが、Djangoにはこれを行うコマンドが用意されています。

py manage.py collectstatic

これにより、次の結果が生成されます。

131 static files copied to 'C:\Users\your_name\myworld\my_tennis_club\productionfiles'.

なんとファイルが131個もあります。これは、Djangoに組み込まれている管理者ユーザーインターフェイスによるものです。この機能を本番環境で維持するために、スタイルシート、フォント、画像、JavaScriptを含む多数のファイルが付属しています。

my_tennis_club     members/     my_tennis_club/     productionfiles/         admin/         myfirst.css

機能を確かめよう

これでプロジェクトの静的ファイルが収集されました。WhiteNoiseをインストールしていれば、静的ファイルの追加の章の例が最終的に機能するようになります。

サーバーを起動して結果を確認します。

py manage.py runserver

そして、自分のブラウザ127.0.0.1:8000/testing/で結果をチェックしてください。

my_tennis_club/members/templates/template.html:
{% load static %} <!DOCTYPE html> <html> <link rel="stylesheet" href="{% static 'myfirst.css' %}"> <body> {% for x in fruits %} <h1>{{ x }}</h1> {% endfor %} </body> </html>

実行例(開発準備中) »



プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細