2012年12月26日水曜日

Djangoで、イメージファイルのアップロード

Django(1.4.2)で、イメージファイルのアップロードです。モデルで、ImageFieldを指定すると、管理サイトからは、簡単にイメージファイルをアップロードできるようになりました。MEDIA_ROOTとして指定したフォルダ内に画像が保存されます。途中、ImageFieldを指定した際、PIL関連(?)のエラーが出たので、Python Imaging Library (PILライブラリ) をインストールしました。ということで、アップロードまではできましたが、表示方法がわからない。再び、亀の歩みで進むしかありません(笑)。

settings.py
SITE_ROOT = os.path.dirname(__file__) 
MEDIA_ROOT = os.path.join(SITE_ROOT, 'static/img')
/blog/models.py
from django.db import models
from django.conf import settings

class Blog(models.Model):
    pic = models.ImageField(upload_to=settings.MEDIA_ROOT)
PILのインストール
pip install PIL

Django管理サイトの様子




参考サイト
Need help installing PIL to use Django ImageField(Stack Overflow)

2 件のコメント:

  1. https://github.com/jbking/django_learning

    こちらdjango勉強会ように使った画像のアップロードして表示するプログラムです。

    表示したことあるのでコメント書きました。

    返信削除
    返信
    1. コメントありがとうございます!

      削除