Django не показывает изображения в редакторе (404 ошибка)

Я пытаюсь создать пост и добавить в него изображения. Для этого я использую Django-summernote в Django 3.0. Картинка загружается в папку на жестком диске, но не отображается в редакторе. Консоль показывает 404 Error. Пожалуйста, дайте мне совет, как это исправить? Спасибо!

settings.py

STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'

ADMIN_MEDIA_PREFIX = STATIC_URL + "grappelli/"
X_FRAME_OPTIONS = 'SAMEORIGIN'
SUMMERNOTE_THEME = 'bs4'  # Show summernote with Bootstrap4

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

urls.py

urlpatterns = [
    path('admin/filebrowser/', site.urls),
    path('summernote/', include('django_summernote.urls')),
    path('admin/', admin.site.urls),
    path('', include('blog.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

models.py

class Post(models.Model):
    author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    title = models.CharField(max_length=200)
    text = models.TextField()
    created_date = models.DateTimeField(default=timezone.now)
    published_date = models.DateTimeField(blank=True, null=True)
    image = models.ImageField(upload_to="", blank=True, null=True)

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

    def get_absolute_url(self):
        return "/api/article/%i/" % self.id

    def __str__(self):
        return self.title

скриншот из консоли

Сначала добавьте прямую косую черту в MEDIA_ROOT: MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')

Затем проверьте следующие материалы:

  1. DEBUG = True в ваших настройках
  2. Проверьте таблицу Post model в вашей базе данных, имеет ли поле image какое-либо значение
  3. .
  4. если это загруженный файл или статический файл, то в вашем шаблоне напишите:

<img src="{{post_object.image.url}}" />

и добавить post_object в контекст представления

Вернуться на верх