Django - Показать JPG на сайте администратора - PullRequest
0 голосов
/ 23 января 2020
  1. Django 3.0.2 Python 3.8.2

  2. models.py:

class Exec(models.Model):
#Create a relationship, don't inherit from User!

exec = models.OneToOneField(User, on_delete=models.CASCADE)

#exec_First_Name = models.CharField(max_length=30, default="First Name")
#exec_Last_Name = models.CharField(max_length=30, default="Last Name")
#exec_Mail = models.EmailField(default="someone@mail.com")

exec_Title = models.CharField(max_length=30, default="Position")
exec_Location = models.CharField(max_length=30, default="Cape Town")
currency_Code = models.ForeignKey(Currencie, on_delete=models.CASCADE)
exec_Target = models.IntegerField(default=0)
exec_Comments = models.TextField(default="Comments")

#Additional
profile_pic = models.ImageField(upload_to='profile_pics', blank=True)

def __str__(self):
    #fullname = str(self.exec_First_Name) +" " + str(self.exec_Last_Name)
    #return fullname
    #return self.exec.username
    return str(self.id)

@cached_property
def display_image(self):
    html = '<img src="{img}">'
    if self.profile_pic:
        return format_html(html, img=self.image.url)
    return format_html('<strong>There is no image for this entry.<strong>')
display_image.short_description = 'Display image'
admin.py:
    class ExecAdmin(admin.ModelAdmin):
      list_display = ('exec', 'exec_Title', 'exec_Location')
      readonly_fields = ['display_image']
      list_filter = ('exec_Location', 'exec_Title')
Дисплей администратора:

enter image description here

Спасибо

Он успешно отображает «Нет изображения для этой записи.», Но а) не отображает изображение, когда оно найдено, и б) когда я нажимаю на путь к изображению, оно взрывается:

Путь не найден http://127.0.0.1: 8000 / media / profile_pics / IMG_0009.JPG

Почему я не сделал ????
...