0

注:これは、圧縮が組み込まれているという点でdjango-staticfilesとは異なります。

私の/static/は自分でアップロードする静的ファイルに使用され、/media/はユーザーがアップロードするファイルに使用されます。ただし、DJANGO_STATIC_MEDIA_URLは、すべての静的ファイルが1つのURLの下にあるという事実に依存しています。

私は何かが足りないのですか?または、すべてのテンプレートに{{MEDIA_URL}}と{{STATIC_URL}}を手動で設定する必要がありますか?

さらに、django-staticによって生成されたシンボリックリンクがS3にアップロードされるように設定するにはどうすればよいですか?

私はDjango1.4を使用していますが、現在の構成は次のとおりです。

DJANGO_STATIC = True
DJANGO_STATIC_MEDIA_URL = '//s3.amazonaws.com/%s/static/' % AWS_STORAGE_BUCKET_NAME
DJANGO_STATIC_MEDIA_ROOTS = [os.path.join(SITE_ROOT, 'static')]
4

1 に答える 1

0

私はこのアプリを使用していませんが、ドキュメントを読んだ後、DJANGO_STATIC_MEDIA_URL は、画像の src 属性の場所を定義するときに {{ MEDIA_URL }} を含める必要性を最小限に抑えるためのショートカットのようです。

DJANGO_STATIC_MEDIA_URL (www.mysite.com/media) を定義すると、アップロードしたメディアの場所に次のようにアクセスできます。

<img src="{% staticfile "/foo.png" %}"/>

場所を次のように記述する必要はありません。

<img src="{{ MEDIA_URL }}{% staticfile "/foo.png" %}"/>

そのため、css および js 静的ファイルを参照するには、引き続き {{ STATIC_URL }} を使用してください。アップロードしたメディアを参照するには、DJANGO_STATIC_MEDIA_URL を定義して {% staticfile %} テンプレートタグのみを使用するか、通常どおり {{ MEDIA_URL }} を使用します。

于 2012-12-31T22:48:14.190 に答える