Tipování typů + drobné úpravy Admina
This commit is contained in:
parent
b001b79349
commit
cbffa32887
3 changed files with 21 additions and 4 deletions
|
@ -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},
|
||||
|
|
|
@ -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: ...
|
||||
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
|
||||
|
||||
|
|
|
@ -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()
|
||||
|
|
Loading…
Reference in a new issue