2015-08-25 3 views
0

Я добавил изображение к продукту, но оно не показано в предпросмотре продукта. Появится сообщение об ошибке: «Содержимое запроса не может быть загружено. Повторите попытку позже». Веб-страница расположена в localhost, DB находится в UTF8_general_ci (MySQL), Django 1.8, Python 2.7. Кроме того, когда я пытаюсь открыть прикрепленный (я поместил изображение там), я получаю сообщение об ошибке, отслеживающие иль ниже этой должности: среды:Изображение не показано в Django LFS

Request Method: GET 
Request URL: http://localhost:8000/media/files/book1.png 

Django Version: 1.8 
Python Version: 2.7.6 
Installed Applications: 
('lfs_theme', 
'compressor', 
'django.contrib.admin', 
'django.contrib.auth', 
'django.contrib.contenttypes', 
'django.contrib.sessions', 
'django.contrib.staticfiles', 
'django.contrib.sites', 
'django.contrib.flatpages', 
'django.contrib.redirects', 
'django.contrib.sitemaps', 
'django_countries', 
'pagination', 
'reviews', 
'portlets', 
'lfs.addresses', 
'lfs.caching', 
'lfs.cart', 
'lfs.catalog', 
'lfs.checkout', 
'lfs.core', 
'lfs.criteria', 
'lfs.customer', 
'lfs.customer_tax', 
'lfs.discounts', 
'lfs.export', 
'lfs.gross_price', 
'lfs.mail', 
'lfs.manage', 
'lfs.marketing', 
'lfs.manufacturer', 
'lfs.net_price', 
'lfs.order', 
'lfs.page', 
'lfs.payment', 
'lfs.portlet', 
'lfs.search', 
'lfs.shipping', 
'lfs.supplier', 
'lfs.tax', 
'lfs.tests', 
'lfs.utils', 
'lfs.voucher', 
'lfs_contact', 
'lfs_order_numbers', 
'localflavor', 
'postal', 
'paypal.standard.ipn', 
'paypal.standard.pdt') 
Installed Middleware: 
('django.middleware.csrf.CsrfViewMiddleware', 
'django.middleware.common.CommonMiddleware', 
'django.contrib.sessions.middleware.SessionMiddleware', 
'django.contrib.auth.middleware.AuthenticationMiddleware', 
'django.contrib.redirects.middleware.RedirectFallbackMiddleware', 
'pagination.middleware.PaginationMiddleware') 


Traceback: 
File "/home/stp/Рабочий стол/lfs-installer/eggs/Django-1.8-py2.7.egg/django/core/handlers/base.py" in get_response 
    132.      response = wrapped_callback(request, *callback_args, **callback_kwargs) 
File "/home/stp/Рабочий стол/lfs-installer/eggs/Django-1.8-py2.7.egg/django/views/static.py" in serve 
    54.  fullpath = os.path.join(document_root, newpath) 
File "/usr/lib/python2.7/posixpath.py" in join 
    80.    path += '/' + b 

Exception Type: UnicodeDecodeError at /media/files/book1.png 
Exception Value: 'ascii' codec can't decode byte 0xd0 in position 10: ordinal not in range(128) 

ответ

1

Вашей проблема в том, что корень медиа путь содержит не-ASCII символы, такие как «Рабочий стол».

Возможное решение:

  • Переместить свой проект ASCII-только (некириллического в вашем случае) путь
  • Используйте Python3 вместо 2, которые не имеют этой Unicode проблемы
  • Изменить MEDIA_ROOT установка для Строка Unicode, например u'/home/stp/Рабочий стол/myproject/media/'
+0

Спасибо, я попробую это :) –

0

Чтобы получить изображение и переопределить ANSII кодирование Я сделал следующее:

  • Добавлена ​​строка # -*- coding: utf-8 -*- в начале settings.py в моих LFS;
  • Как сказал г-н Тихонов, изменил MEDIA_ROOT строку

После этого изображения стали загружаться нормально.

Смежные вопросы