BotaniQ_Q
@BotaniQ_Q

Почему не выводятся картинки в Django?

Делаю приложение-блог, хочу добавлять картинки к постам, но выводиться только такая иконка картинки5e3abe9f93b345dca2b550b9529e5bad.PNG
Моя models:
from django.db import models
from django.utils import timezone



class Post(models.Model):
    author = models.ForeignKey('auth.User')
    title = models.CharField(max_length=200)
    text = models.TextField()
    image = models.ImageField(upload_to='images/', null=True, blank=True)
    image2 = models.ImageField(upload_to='images/', null=True, blank=True)
    created_date = models.DateTimeField(
            default=timezone.now)
    published_date = models.DateTimeField(
            blank=True, null=True)

    def publish(self):
        self.published_date = timezone.now()
        self.save()

    def __str__(self):
        return self.title

в settings:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
IMAGES_URL = '/images/'
IMAGE_ROOT = MEDIA_ROOT = os.path.join(BASE_DIR, 'images')
и сам html

<html>
<head>
<title>Django blog</title>
</head>
<body>
<p>Hello, world</p>
<hr/>
<p>second string</p>
<hr/>

    {% for post in posts %}
        <div>
            
            <h1><a href="">{{ post.title }}</a></h1>
            <p>{{ post.text|linebreaksbr }}</p>
            <p><img src="{{post.image}}"><p>
            <p>published: {{ post.published_date }}</p>
        </div>
    {% endfor %}
</body>
</html>

Получается еще так, что папка images, создается не в приложении blog, а в главной директории, наверное нужно в models сделать так? image = models.ImageField(upload_to='Мое приложение/images/', null=True, blank=True)?
  • Вопрос задан
  • 788 просмотров
Пригласить эксперта
Ответы на вопрос 3
kentuck1213
@kentuck1213
<p><img src="{{post.image.url }}"><p>
Ответ написан
sim3x
@sim3x
{{post.image.url}}

image2почитайте про Нормальные формы БД
Ответ написан
Комментировать
@samuser
programmer
{% load staticfiles %}

<img src="{% static "myexample.jpg" %}" alt="My image"/>
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы