@X-yro

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

Здравствуйте Хабаровчане. Тут у меня такая проблема. Вроде все сделал по документации, но почему то картинка на сайте не выводится. Более того в админ панели когда переходишь по ссылке на эту картинку то выходит страница 404.

Модели:
from django.db import models

class PortfolioStructure(models.Model):
    title = models.CharField(max_length=255, unique=True)
    upload_img = models.ImageField(upload_to='image/%Y/%m/%d/', blank=True)
    upload = models.FileField(upload_to='video/%Y/%m/%d/')
    descr = models.TextField()
    site_url = models.URLField(blank=False)
    git_url = models.URLField(blank=False)

    def __str__(self):
        return self.title


Вьюхи:
from django.shortcuts import render
from django.views.generic import ListView

from .models import PortfolioStructure


class ListProjects(ListView):
    model = PortfolioStructure
    template_name = 'WebPortfolioApp/index.html'
    context_object_name = 'projects'


Настройки:
STATIC_URL = 'static/'

# Default primary key field type
# https://docs.djangoproject.com/en/4.1/ref/settings/#default-auto-field

DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'

STATICFILES_DIRS = [
   os.path.join(BASE_DIR, "static"),
]

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


Html:
{% extends 'WebPortfolioApp/base.html' %}


{% block content %}
    <div class="container">
            {% for p in projects %}
                {% if p.upload_img %}
                    <p><img src="{{ p.upload_img.url }}"></p>
                {% endif %}
                        <h2>{{p.title}}</h2>
                {% autoescape on %}
                {{p.descr|linebreaks|truncatewords:50}}
                {% endautoescape %}
                        <div></div>
                        <p><a href="#" >Просмотреть</a></p>
        {% endfor %}
    </div>
{% endblock %}


Структура проекта:
63e27f81a8a8b686053929.png
  • Вопрос задан
  • 86 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы