Мне не хватает какого-либо элемента для отображения изображения, связанного с каждым сообщением в блоге, созданном с помощью Django, вместо имени файла изображения.
Многие решения этой проблемы были:
<img src="{{Object.picture.url}}"/>
На шаблоне я пробовал:
1
<img src="{{ posts.title_picture.url }}"/>
2
<img src="{{title_picture.url}}"/>
Что привело соответственно к отображению в браузере:
1
pictureforpost1.png
2
1022 * IMG *
Модель:
class Post(models.Model):
title = models.CharField(max_length=255, blank=True, null=True)
title_picture = models.FileField(blank=True,null=True)
вид:
class IndexView(ListView):
model = Post
context_object_name = 'posts'
Похоже, Джанго находит файл. Просто не отображается картинка.
**** Решение благодаря ответам ниже: ****
изменено
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
to
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
и добавил следующее
urls.py
urlpatterns = [
...
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
# when served with STATIC_URL and STATIC_ROOT instead it
# is not working so check difference in MEDIA and STATIC.
В общем, мне не хватало (и все еще есть :)) базовых знаний о загрузке и отображении статических файлов.
Спасибо.