from django.db import models from tinymce.models import HTMLField from db.help import buttons_help_text # Create your models here. class Membership(models.Model): published = models.BooleanField('Wpis opublikowany', default=True) year = models.IntegerField('Rok', primary_key=True) content = HTMLField('Treść', default='', blank=True) buttons = models.TextField( 'Przyciski', default='', blank=True, help_text=buttons_help_text) current = models.BooleanField( 'Aktualne składki (pokazywane przy przekierowaniu na stronę)', default=False) @staticmethod def get_current(): return Membership.objects.filter(current=True).first() def save(self, *args, **kwargs): if self.current is True: Membership.objects.exclude(year=self.year).update(current=False) super(Membership, self).save(*args, **kwargs) def __str__(self): return f'Składki członkowskie {self.year}' class Meta: verbose_name = 'Składka członkowska' verbose_name_plural = 'Składki członkowskie' ordering = ['-year']