Задать вопрос

Добавить фото в страницу профиля с использованием thubnails?

Добрый день!! Подскажите пожалуйста, хочу добавить на страницу изображение, при помощи sorl - thumbnails. Вот мой код:
Моя молель:
class Person(models.Model):
    first_name = models.CharField(max_length=50)
    last_name = models.CharField(max_length=50)
    birthdate = models.DateField('Date of birth')
    bio = models.CharField(max_length=255)
    image = ImageField(upload_to='photos/', blank=True, null=True)

Моя вьюха:
def info(request, person_id):
    person = get_object_or_404(Person, id=person_id)
    contact = get_object_or_404(Contact, person_id=person_id)
    return render_to_response(
        'index.html',
        {'person': person, 'contact': contact},
        context_instance=RequestContext(request)
        )

Мой шаблон:
{% load thumbnail %}
<ul>
    <li> {{ person.first_name }}</li>
    <li> {{ person.last_name }}</li>
    <li> {{ person.bio }}</li>
    <li> {{ person.birthdate }}</li>
    {% thumbnail person.image "100x100"  as im %}
        <img src="{{ im.url }}" />
    {% endthumbnail %}
    <li> {{ contact.email }}</li>
    <li> {{ contact.jabber }}</li>
    <li> {{ contact.skype_id }}</li>
    <li> {{ contact.other_contacts }}</li>
</ul>


thumbnails везде подключен. Ошибка при тестовом выводе(Скрин прилагаеться)

fdcc883890434905a54ebbc0e0c48fcd.png

Подскажите что я делаю не так?!?! Заранее огромное спасибо!!
  • Вопрос задан
  • 1064 просмотра
Подписаться 3 Оценить Комментировать
Решения вопроса 1
sim3x
@sim3x
# settings.py
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
STATIC_URL = '/static/'


# urls.py

if DEBUG:
    urlpatterns += static(MEDIA_URL, document_root=MEDIA_ROOT)
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
andrey_u
@andrey_u
Если еще не разобрались:

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


https://sorl-thumbnail.readthedocs.org/en/latest/e...
Ответ написан
VladSkliar
@VladSkliar Автор вопроса
Да, само изображение присутствует в папке кеш. Справа в коде странице прописан путь к файлу который создал thumbnails. Мне кажется что у меня проблема с файлом настроек. Потому что попытка, просто вывести фото через <img src="{{ person.image.url }}" /> показывае тот же результат.

Часть мого файла setings.py:
media_root: путь к папке хранения
MEDIA_ROOT = "/home/vladskliar/minisite"

MEDIA_URL = "/"

STATIC_URL = '/static/'

в модели прописано что заливать фото в папку photos:
image = ImageField(upload_to='photos/')
Скиньте пожалуйста фото примера настроек, вьюхи, шаблона и модели. Которые работают.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы