ConnectionRefusedError просмотр ImageField в админке

Абсолютный нооб в django. Я просто выбираю случайные вещи, которые меня интересуют, чтобы попытаться узнать больше о разработке на этой платформе.

Я пытался добавить поле ImageField к одной из моих моделей.

Если у меня нет изображения, сохраненного как часть объекта, область администратора отображается нормально, но если я попытался сохранить изображение (сохранение не показывает мне никакой ошибки, о которой я знаю - я вижу путь изображения в этом поле), то при просмотре модели в администраторе я получаю ConnectionRefusedError

Internal Server Error: /admin/fb/organization/
Traceback (most recent call last):
  File "/home/rowc/.local/lib/python3.8/site-packages/django/db/models/options.py", line 672, in get_field
    return self.fields_map[field_name]
KeyError: 'thumbnail_preview'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/rowc/.local/lib/python3.8/site-packages/django/contrib/admin/utils.py", line 271, in lookup_field
    f = _get_non_gfk_field(opts, name)
  File "/home/rowc/.local/lib/python3.8/site-packages/django/contrib/admin/utils.py", line 302, in _get_non_gfk_field
    field = opts.get_field(name)
  File "/home/rowc/.local/lib/python3.8/site-packages/django/db/models/options.py", line 674, in get_field
    raise FieldDoesNotExist(
django.core.exceptions.FieldDoesNotExist: Organization has no field named 'thumbnail_preview'

Моя модель выглядит следующим образом

class Organization(models.Model):
  class Meta:
    ordering = ['name']
  name= models.CharField(max_length=32, unique=True)
  abbreviation= models.CharField(max_length=3, unique=True)
  logo = models.ImageField(blank=True, upload_to='images')

  def __str__(self) -> str:
    return "(" + self.abbreviation + ") " + self.name

  @property
  def thumbnail_preview(self):
      if self.logo:
          _thumbnail = get_thumbnail(self.logo,
                                  '300x300',
                                  upscale=False,
                                  crop=False,
                                  quality=100)
          return format_html('<img src="{}" width="{}" height="{}">'.format(_thumbnail.url, _thumbnail.width, _thumbnail.height))
      return ""

А код администратора выглядит следующим образом

class OrganizationAdmin(admin.ModelAdmin):
  list_display = ('abbreviation','name', 'thumbnail_preview')

  def thumbnail_preview(self, obj):
    return obj.thumbnail_preview

  thumbnail_preview.short_description = 'Thumbnail Preview'
  thumbnail_preview.allow_tags = True

Оригинально я не включал свойство "upload_to" и это не приводило к ошибке, но отображало неработающее изображение.

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