Bladeren bron

add admin image preview

subDesTagesMitExtraKaese 2 jaren geleden
bovenliggende
commit
3c1ad0afc4
2 gewijzigde bestanden met toevoegingen van 10 en 0 verwijderingen
  1. 3 0
      admin.py
  2. 7 0
      models.py

+ 3 - 0
admin.py

@@ -21,6 +21,9 @@ class PersonAdmin(admin.ModelAdmin):
   ordering = ('group','name')
   filter_horizontal = ('partners',)
 
+  fields = ('name', 'parent', 'partners', 'birth_date', 'birth_town', 'death_date', 'death_town', 'comment', 'image', 'image_tag', 'color', 'group', )
+  readonly_fields = ('image_tag',)
+
   def get_queryset(self, request):
     qs = super().get_queryset(request)
     return qs.prefetch_related('partners')

+ 7 - 0
models.py

@@ -1,7 +1,9 @@
 from django.db import models
+from django.utils.html import mark_safe
 
 from colorfield.fields import ColorField
 
+
 class Group(models.Model):
   name = models.CharField(max_length=255)
   color = ColorField(default='#87bb37')
@@ -33,6 +35,11 @@ class Person(models.Model):
 
   group = models.ForeignKey(Group, on_delete=models.PROTECT, verbose_name="Gruppe")
 
+  def image_tag(self):
+    if self.image:
+      return mark_safe(f'<img src="/stammbaum/person/{self.id}/thumb" />')
+  image_tag.short_description = 'Vorschau'
+
   def __str__(self) -> str:
     tmp = self.name
     #if self.parent: