1

私はdjangoを学んでいますが、すでに少し初心者の質問があります。静的フォルダーを指すことができず、すべての組み合わせを試し、YouTube チュートリアルなどで人々がそれを行うのを見ました。

私のsettings.pyは次のようになります。

   STATIC_ROOT = '/home/peter/brewery/static/'
   TEMPLATE_DIRS = '/home/peter/brewery/mysite/templates/'

ここで、brewery/ は mysite/ と static/ を含むフォルダー、mysite/ はによって作成されたフォルダーです。

   django-admin.py startproject

どこ settings.py も住んでいます...

ページが適切なテンプレートでレンダリングされるため、テンプレート フォルダーが正しくマップされているように見えますが、/static/css/ フォルダー内の css にアクセスできません。このようにcssのテンプレートにパスを表示します

   <link ...  href='/static/css/brewery.css' />

また、コンピューターで href 絶対パスを作成しようとしましたが、機能しません。

私はdjango 1.3を使用しており、djangoが提供するサーバーを実行しています(python manage.py runserver)

4

2 に答える 2

4

1-設定ファイルで、静的URLと静的ルートを次のように定義します。

STATIC_URL = '/static/'

2-セットDEBUG = True

3-TEMPLATE_CONTEXT_PROCESSORS変数にが含まれていることを確認しますdjango.core.context_processors.static

4-次のようなテンプレートで参照します...

<link ...  href='{{ STATIC_URL }}css/brewery.css' />

ソース:https ://docs.djangoproject.com/en/dev/howto/static-files/

于 2012-10-18T17:58:11.480 に答える
1

デバッグ モードSTATIC_ROOTでは使用されませんがstaticfiles_urlpatterns()、すべての異なるアプリからの静的ファイルを提供します。静的ファイルをいずれかstatic/のアプリのディレクトリに配置するか、設定でSTATICFILES_DIRSを定義してそこにサイトの静的ファイルを配置します。

STATIC_ROOTは、すべてのアプリからすべての静的ファイルが収集される場所であり、STATICFILES_DIRS呼び出したときに次のようになります。

python manage.py collectstatic

また、本番環境でのみ使用されます。

于 2012-10-18T18:39:48.883 に答える