Как я могу отображать изображения из моей базы данных Django?

#django

Вопрос:

В настоящее время, хотя это может быть не лучшей практикой, у меня есть изображения, хранящиеся в моей базе данных django, и я хочу извлечь их для отображения на странице галереи. Однако я вообще не могу вывести изображение на экран, что, я думаю, связано с тем, что оно не попадает на правильный путь.

 lt;img src ="{% static 'img/' object.image %}"gt;  

Этот код предназначен для того, чтобы попытаться найти правильный каталог для загруженного изображения, который

 AFAsrcartForAllstaticimg  

Также object.image происходит от этой модели

 class GalleryPost(models.Model):  title = models.CharField(max_length=120)  description = models.TextField(blank =True, null=True)  artist = models.CharField(max_length=120)  featured = models.BooleanField(default= False)  image = models.ImageField(null = True, blank = True, upload_to = "static/img/")  

Все остальные поля здесь работают, и я вижу, что изображение загружается в нужное место.

Комментарии:

1. используйте {{ object.image.url }} вместо этого…

Ответ №1:

Как сказал @Willem Van Onsem в комментарии, вы можете использовать lt;img src ="{{ object.image.url }}"gt; , но вам нужно проверить, существует ли изображение.

 {% if object.image %}  lt;img src ="{{ object.image.url }}"gt; {% else %}  lt;img src ="lt;replace for default image urlgt;"gt; {% endif %}  

Комментарии:

1. Это работает для меня, я был уверен, что раньше использовал {{object.image.url }}. в любом случае, спасибо тебе