TK-IT / web

TÅGEKAMMERETs hjemmeside i Django. Både offentlig og intern
https://TAAGEKAMMERET.dk
Other
2 stars 3 forks source link

Galleriet opdaterer ikke isCoverFile i første forsøg #256

Closed siadyhr closed 5 years ago

siadyhr commented 5 years ago

Ændrer man forcedOrder (vha. counteren på admin-siden) på et billede for at få det til at være det første i et album, bliver isCoverFile (som vist ved det lille grønne flueben og ved hvilket billede, der er forside i album-oversigten) ikke opdateret før anden gang man trykker på "Gem"-knappen. Billedernes rækkefølge i galleriet opdateres dog korrekt. Jeg gætter på, at noget bliver kaldt i den forkerte rækkefølge, men jeg kan ikke hitte ud af hvad, det er...

Mortal commented 5 years ago

Jeg tror en fin løsning ville være at implementere særlig logik i en override af ModelAdmin's save_model eller save_related, jf. følgende stump kode i django/contrib/admin/options.py:

if request.method == 'POST':
    form = ModelForm(request.POST, request.FILES, instance=obj)
    if form.is_valid():
        form_validated = True
        new_object = self.save_form(request, form, change=not add)
    else:
        form_validated = False
        new_object = form.instance
    formsets, inline_instances = self._create_formsets(request, new_object, change=not add)
    if all_valid(formsets) and form_validated:
        self.save_model(request, new_object, form, not add)
        self.save_related(request, form, formsets, not add)
        ...
Mortal commented 5 years ago

Jeg har committet og deployet et fix der virker fint på mit lokale setup - vil du bekræfte om det virker på hjemmesiden nu?

siadyhr commented 5 years ago

Jeps, det virker. Tak!

neic commented 5 years ago

Fikser det her også #103 ?

Mortal commented 5 years ago

Jeg vil tro det også fikser #103, men jeg har ikke testet. Jeg kunne godt huske der var et relateret issue, men det dukkede ikke op da jeg søgte efter ting omhandlende galleriet...