2016-10-12 11 views
-1

私はDjangoとPythonの新しいプレーヤーです。静的ファイルをプロジェクトレベルの静的フォルダからロードします。問題は私ができないことですが、私はまだアプリケーションの静的を読み込むことができます。 これは私のプロジェクトの構造である:ビューでDjangoの静的ファイルを読み込めません

Yaas 
    __init__.py 
    settings.py 
    urls.py 
    wsgi.py 
    templates 
     base.html 
    static 
     style.css 
    auction 
     templates 
      auction 
       index.html 
     static 
      auction 
       style.css 
     __init__.py 
     apps.py 
     models.py 
     urls.py 
     views.py 

事はbase.htmlでこのように、それはオークションの静的ファイルと連携です:

{% load static %} 
<link rel="stylesheet" type="text/css" href="{% static 'auction/style.css' %}" /> 

しかし、それはプロジェクトの静的ファイルで404を返します。 :

{% load static %} 
<link rel="stylesheet" type="text/css" href="{% static 'style.css' %}" /> 

settings.py

STATIC_URL = "/static/" 
STATIC_ROOT = os.path.join(BASE_DIR, "static") 

私はDjangoで他のソリューションとドキュメントを試みましたが、それでも動作しませんでした。私はDjango 1.10を使用しています。

+1

これらはDjangoによってレンダリングされないので、タグは機能しません –

答えて

0

私は、次を追加することで、この作品を作った:

STATICFILES_DIRS = [os.path.join(BASE_DIR, "static")] 

を(ポイント4の後)docsから:

あなたのプロジェクトは、おそらくも に縛られていない静的な資産を持っています特定のアプリ。 アプリ内に静的/ディレクトリを使用することに加えて、 設定ファイルにディレクトリのリスト(STATICFILES_DIRS)を定義して、Djangoが静的ファイルも検索します。

は、Djangoは、出力はすべて各 <app>/staticSTATICFILES_DIRSディレクトリで見つかった静的ファイルを収集します STATIC_ROOTディレクトリは、異なっていなければならないことに注意してください。

希望に役立ちます!

+0

これは機能します!ありがとうございました。だから、STATIC_ROOTが新しいバージョンのDjangoでプロジェクトスタティックファイルをもう使用しないようになったのでしょうか? –

+0

STATIC_ROOTは、静的ファイルがDjango(collectstaticコマンド)によって収集(出力)される場所を示すために使用されているようです。ドキュメントをチェックすると、これを削除する必要はありませんが、STATICFILES_DIRSディレクトリとは異なるはずです。両方が同じであれば、Djangoは出力されたSTATIC_ROOTディレクトリを、収集されたすべての静的ファイルに置き換えることはできません。私は私の答えを調整します – jga

関連する問題