Tipování typů + drobné úpravy Admina

This commit is contained in:
Pavel "LEdoian" Turinsky 2025-05-05 15:17:35 +02:00
parent b001b79349
commit cbffa32887
3 changed files with 21 additions and 4 deletions

View file

@ -30,7 +30,7 @@ def prepnout_fotogalerii_do_org_rezimu(modeladmin, request, queryset):
class GalerieInline(admin.TabularInline):
model = Obrazek
fields = ['soubor', 'nazev', 'popis', 'poradi']
fields = ['soubor', 'nazev', 'popis', 'typ', 'poradi']
readonly_fields = ['nazev']
formfield_overrides = {
models.TextField: {'widget': forms.TextInput},

View file

@ -8,6 +8,9 @@ Doporučené použití: TODO
import abc
from datetime import datetime
import logging
logger = logging.getLogger(__name__)
from django.utils.safestring import mark_safe, SafeString
from django.utils.html import format_html, format_html_join
@ -90,13 +93,25 @@ class Obrazek(ZobrazitelnyBazmek):
class Video(ZobrazitelnyBazmek):
...
def zobrazit(self, **kwargs):
return r'Takhle se jednou zobrazí videjko…'
def zmenseny_nahled(self, **kwargs):
return r'Takhle se jednou zobrazí videjko…'
class DummyBazmek(ZobrazitelnyBazmek):
# FIXME: hezčí blokovější elementy!
def zobrazit(self, **kwargs):
return r'Tohle zobrazit neumím :-('
def zmenseny_nahled(self, **kwargs):
return r'Tohle zobrazit neumím :-('
def tipniTyp(soubor) -> DbObrazek.Typ:
from PIL import Image, UnidentifiedImageError
try:
Image.open(soubor)
return DbObrazek.Typ.OBRAZEK
except UnidentifiedImageError:
return DbObrazek.Typ.NEVIM
logger.warning("Nepodařilo se tipnout typ nečekaným způsobem!")
return DbObrazek.Typ.NEVIM
def tipniTyp(soubor) -> DbObrazek.Typ: ...

View file

@ -184,9 +184,11 @@ def new_galerie(request, galerie, soustredeni):
gal.save()
# zpracovani obrazku v galerii
from galerie.typy import tipniTyp
for obr in request.FILES.getlist('obr'):
o = Obrazek()
o.soubor = obr
o.typ = tipniTyp(obr)
o.nazev = str(obr)
o.galerie = gal
o.save()