Отображение изображения с модели в шаблоне Django - PullRequest
0 голосов
/ 07 мая 2020

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

В моем шаблоне у меня есть:

{% for server in servers %}
  <div class="hs-item set-bg" data-setbg="{{ server.image.url }}">
     <div class="hs-text">
        <div class="container">
           <h2>The Best <span>Games</span> Out There</h2>
             <p>Lorem ipsum.</p>
              <a href="#" class="site-btn">Read More</a>
        </div>
     </div>
 </div>
{% endfor %}

И мой модели выглядят так:

class Server(models.Model):
    Name = models.CharField(max_length=100)
    IP = models.CharField(max_length=50)
    Port = models.IntegerField()
    Image = models.ImageField(default='default.jpg', upload_to='server_pics')

    def __str__(self):
        return str(self.Name) if self.Name else ''

Я добавил это в свой settings.py :

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'

А это в свой urls.py :

if settings.DEBUG:
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Но изображение не отображается, и я не получаю сообщение об ошибке в консоли ... Не уверен, что я здесь делаю не так. ..

Однако, когда я заменяю {{server.image.url}} в моем шаблоне изображением stati c, он работает.

1 Ответ

0 голосов
/ 07 мая 2020

Я нашел решение, мне пришлось заменить server.image.url на server.Image.url, что устранило проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...