-2

Djangoで静的URLを設定しようとしていますが、テンプレートでそれを使用してcssにリンクしています。これが私のコードです。なぜ機能しないのですか?また、これを設定するためのベストプラクティスは何ですか?ありがとう。

# settings

import os

PROJECT_PATH = os.path.dirname(os.path.abspath(__file__)) 
STATIC_ROOT = os.path.join(PROJECT_PATH, 'static')
STATIC_URL = '/static/'

STATICFILES_DIRS = (

)

INSTALLED_APPS = (
    ...
    'django.contrib.staticfiles',
    )


# urls

from django.contrib.staticfiles.urls import staticfiles_urlpatterns

# ... the rest of my URLconfs here ...

urlpatterns += staticfiles_urlpatterns()


# html template

<link rel="stylesheet" href="{{ STATIC_URL }}css/style.css" type="text/css">

# file structure
-project
--project
---settings
---static
----css
-----style.css
4

1 に答える 1

1

STATICFILES_DIRS開発のために静的ディレクトリへのパスのリストを含める必要があります。このSTATIC_ROOT設定は、NginxやApacheなどのHTTPサーバーによって提供される本番環境の単一のディレクトリに静的ファイルを収集するために使用されます。

すでに定義しているので、PROJECT_ROOTこれを行うことができます。

# Assuming your settings.py is at the same level as your static directory
STATICFILES_DIRS = [
    os.path.join(PROJECT_ROOT, 'static'), ]
于 2013-03-20T09:32:19.673 に答える