Как ссылаться на сохраненные изображения базы данных в шаблоне Django? - PullRequest
1 голос
/ 31 марта 2019

Я создал форму в Django, которая позволяет пользователям писать что-то в текстовых полях и загружать изображения. Загруженные изображения перейдут в каталог /media/. Все хорошо, кроме одной вещи. Я не могу отобразить эти изображения в моем шаблоне. Я попробовал следующие способы, но это не сработало. это фрагмент views.py:

class Article(models.Model):
    title = models.CharField(max_length=100)
    slug = models.SlugField(unique=True, blank=True)
    body = models.TextField()
    date = models.DateTimeField(auto_now_add=True)
    thumbnail = models.ImageField(default='default.png', blank=True)
    author = models.ForeignKey(User, default=None, on_delete=models.CASCADE)

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

<div class="articles">
    <div class="article">
        <h1>{{ object.title }}</h1>
        <img src="/media/{{ object.thumbnail }}/" alt="">  # didn't work
        <p>{{ object.body }}</p>
    </div>
</div>

Пожалуйста, помогите мне решить эту проблему, спасибо

1 Ответ

2 голосов
/ 31 марта 2019

Вы можете сделать это, обратившись к атрибуту url в поле thumbnail модели Article.

Например,

<div class="articles">
    <div class="article">
        <h1>{{ object.title }}</h1>
        <img src="{{ object.thumbnail.url }}/" alt="">  # This would get url of thumbnail
        <p>{{ object.body }}</p>
    </div>
</div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...