Как отобразить изображение в экземпляре модели в админке django вместо пути к изображению

Я пишу веб-приложение Django и у меня проблема с отображением изображения в существующем экземпляре модели в Django admin и я надеюсь, что вы сможете мне помочь с этим.

У меня есть модель с ImageField, когда я загружаю изображение в мою модель, оно правильно загружается, но вместо отображения изображения на странице администратора отображается путь к изображению, пожалуйста, смотрите скриншот: django admin screenshot

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

Вам необходимо изменить свой admin.py

...
from django.utils.safestring import mark_safe

...

class YourModelAdmin(admin.ModelAdmin):
    exclude('img') # this is the name of the actual image field in your model
    read_only_fields = ['image'] # this is the field you're defining below
    def image(self, obj):
        return mark_safe('<img src="{url}" width={"width"} height={"height"} />'.format(
            url=obj.img.url, # once again, this is the name of the actual image field in your model
            width=obj.img.width, # or define custom width
            height=obj.img.height, # same as above
            ))

И это все. Я протестировал его и он работает на моей базовой установке.

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