1

sorl-thumbnailから使用します。

私はこのモデルのようなモデルを持っています

from sorl.thumbnail import ImageField
class Book(models.Model):
    title = models.CharField(max_length=255)
    thumb =  models.ImageField(upload_to='book')

そして私のテンプレートに本のオブジェクト(私がdjango adminで作成し、写真をdjango adminに設定したもの)を送ります:

{% thumbnail book.thumb "100x100" crop="center" as im %}
   <img src="{{ im.url }}" width="{{ im.width }}" height="{{ im.height }}">
{% endthumbnail %}

しかし、私のページには次のエラーがあります:

GET http://localhost:8000/media/cache/5b/c9/5bc90276a1fb475eb4c28816804e93fa.jpg 404 (NOT FOUND)

このエラーを修正するにはどうすればよいですか?

私のsetting.py:

MEDIA_ROOT = os.path.abspath(os.path.dirname(__file__)) + '/media/'
MEDIA_URL = '/media/'

私のurls.pyには次のものがあります:

urlpatterns += patterns('',
    (r'^media/(.*)$', 'django.views.static.serve', {'document_root': os.path.join(os.path.abspath(os.path.dirname(__file__)), 'media')}),
)

私はdjango開発サーバーから使用しています。

4

1 に答える 1

1

私はこの構成を使用します。この行を試してください
settings.py

SITE_ROOT = os.path.dirname(__file__)
THUMBNAIL_DEBUG = True
MEDIA_ROOT = os.path.join(SITE_ROOT, 'media')
MEDIA_URL = '/media/'

url.py

from django.conf import settings
media_root = getattr(settings, 'MEDIA_ROOT', '/media')    

urlpatterns += patterns('', 
url(r'^media/(?P<path>.*)$','django.views.static.serve',
    {'document_root': media_root})
)
于 2013-06-08T18:34:33.710 に答える