0

Amazon S3 で静的ファイルをホストしていることを示す背景画像を取得しようとしています。base.html の次のコードは完全に機能し、S3 バケットにある CSS ファイルを見つけます。

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

私の質問は、私のCSSファイル内で、次の行が画像を見つけられないようです:

    background-image: url("{{ STATIC_URL }}img/GreenBackground.jpg") no-repeat center center fixed;

私のAmazonバケットは次のようになります

/newdjangoapp
--/admin
--/css
----/stylesheet.css
--/img
----/GreenBackground.jpg

img および css ディレクトリの周りに追加の「静的」ディレクトリを追加して、ファイルパスでこれを更新しようとしました。次のコードを試しました。

    background-image: url("{{ STATIC_URL }}../img/GreenBackground.jpg") no-repeat center center fixed;

そしてさえ

    background-image: url("../img/GreenBackground.jpg") no-repeat center center fixed;

私の静的 URL の設定は次のとおりです。

STATIC_URL = 'http://s3.amazonaws.com/' + AWS_STORAGE_BUCKET_NAME +'/'

そして静的ディレクトリ...

STATIC_ROOT = os.path.join(PROJECT_DIR,'')

STATICFILES_DIRS = (
        os.path.join(PROJECT_DIR, 'static/'),
)

これを修正するための助けをいただければ幸いです。

4

1 に答える 1

1

cssは{{STATIC_URL}}を知らないので、別の方法で参照する必要があるかもしれません。django settings.pyファイル(私の場合は「/ static /」)でstaticをどのように定義したかを確認し、cssファイルでそのように参照します。{{STATIC_URL}}の代わりに、参照を自分と同じにします。 settings.pyファイルで作成されます(私の場合は「/ static / css ...」になります)

于 2013-02-09T09:05:49.237 に答える