2016-05-29 15 views
0

メディアURLとメディアルートは次のとおりです。メディアURLが正しく解決されない

MEDIA_URL = '/media/' 

MEDIA_ROOT = os.path.join(BASE_DIR, MEDIA_URL) 

私urls.pyは、次のように私はテンプレートでそれをアクセスしていますが

if settings.DEBUG: 
    # static files (images, css, javascript, etc.) 
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

です:レンダリング時に交換

<img class="hl" src="{{ MEDIA_URL }}prop/image0.png" /></a> 

URLが/media/prop/image0.pngである、正しいです。

しかし、メディアの場所が見つからないと言います。

+0

MEDIA_URLのrveファイルですか? –

+0

media_rootが正しく作成されませんでした。したがって絶対パスで置き換えます。今はうまくいきます。 –

+0

MEDIA_ROOT変数は、問題を引き起こしていた絶対パスを取得できませんでした。私はそれを修正し、それは正常に動作します。 –

答えて

0

私はこの目的のためにstaticfileを使用することをお勧めします。特定のイメージを使用していて、今後アップロードされるものではないからです。

あなたは、静的ファイルを使用し、あなたの静的フォルダ内の画像を配置し、これを使用することを決定した場合:

<img src="{% static 'image0.png' %}" style=""> 

をごstaticfilesをロードすることを忘れないでください:

{% load staticfiles %} 

ところで将来、テンプレートでメディアファイルを使用したい場合は、次のようにする必要があります。

{% for image in images %} 
    <img src="{{ image.url }}" class="h1"> 
{% endfor %} 
+0

ファイルはユーザーがアップロードしますので、静的には使用できません。私はsettings.pyでこの問題を発見しました。 MEDIA_ROOT変数は、問題を引き起こしていた絶対パスを取得できませんでした。私はそれを修正し、それは正常に動作します。 –

関連する問題