URL изображения из ImageField, используемого в качестве ForeignKey - PullRequest
0 голосов
/ 24 июня 2019

Я пытаюсь увидеть изображение внутри шаблона, используя этот тег {{post_details.header_image.url}}.Когда я это делаю, изображение не появляется.

models.py

class ImageUpload(models.Model):
    name = models.CharField(
        max_length=50,
        )
    file = models.ImageField(
        upload_to='images/%Y/%m/%d',
        )

class BlogPost(models.Model):
    title = models.CharField(
        max_length=70,
        unique=True,
        )
    slug_post = models.SlugField(
        'Slug',
        max_length=70,
        unique=True,
        )
    contents = models.TextField(
        'Contenuti',
        blank=True,
        )
    header_image = models.ForeignKey(
        ImageUpload,
        on_delete=models.CASCADE,
        related_name="blog_header_image",
        blank=True,
        )

views.py

def singlePost(request, slug_post):
    post_details = get_object_or_404(BlogPost, slug_post=slug_post)
    context = {
        "post_details": post_details,
        }
    template = 'blog/reading/single_post.html'
    return render(request, template, context)

single_post.html

  <img src="{{ post_details.header_image.url }}" class="img-fluid" alt="{{ post_details.title }}">
  <h1>{{ post_details.title }}</h1>
  <p>{{ post_details.contents }}</p>

Я вижу заголовок и содержимое, но тег изображения отображается пустым.Как я могу решить эту проблему?

1 Ответ

0 голосов
/ 24 июня 2019

Вы пропустили само поле.

<img src="{{ post_details.header_image.file.url }}" ...>
...