Djangoで画像アップローダーを作るときに注意するポイント

2017.5.24

Django使ってますか?
Djangoで画像アップローダーを作る際に躓きやすいポイントの解説です。

URLディスパッチャの記述

URLのルーティングでアップロードされたディレクトリへのアクセスを書いておかないといけません。基本ですがつまづきやすいので参考コードを記載しておきます。Django1.11です。

from django.conf import settings
from django.conf.urls import url, include
from django.conf.urls.static import static
from django.contrib import admin

urlpatterns = [
    url(r'^myapp/', include('myapp.urls',namespace='myapp')),
    url(r'^admin/', admin.site.urls),
]
if settings.DEBUG:
    urlpatterns += static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)

あとはテンプレートで、

{% for i in result_list %}
<img src="{{ i.image_url.url }}">
{% endfor %}

このように呼び出せば画像が表示されるはずです。