万年素人からHackerへの道

万年素人がHackerになれるまで殴り書きするぜ。

MEDIA_URLが使えない Django

Django 1.6を使っていて{{ MEDIA_URL }}をtemplateに書いているのに使えなかった。 settings.pyには確かに MEDIA_ROOT 実際書いてもエラーにはならないが・・。 空文字になっている。なぜだろうかと思った。

djangosnippets: Use MEDIA_URL in flatpages ここを見ると、無理やりtemplatetagsを使っている。 そこまでやらなくてもできるはずだろ!

ここを見た。 MEDIA_URL is empty in Django 1.4 - Stack Overflow

TEMPLATE_CONTEXT_PROCESSORS = (
    .... # 省略
    # コレがないとMEDIA_URLが使えない
    "django.core.context_processors.media",
)

コレでした!