Add save() method

This commit is contained in:
Gregory Trullemans 2022-10-11 18:31:10 +02:00
parent 8b4ca48944
commit 2629d3ade7
1 changed files with 12 additions and 1 deletions

View File

@ -4,7 +4,10 @@ from django.db import models
from django.utils import timezone from django.utils import timezone
from datetime import date from datetime import date
from .date_week_transition import get_number_of_weeks_between from .date_week_transition import (
get_number_of_weeks_between,
from_date_to_week_number,
)
import markdown import markdown
import pendulum import pendulum
@ -17,6 +20,14 @@ class Seasonisable(models.Model):
season = models.CharField(max_length=9) season = models.CharField(max_length=9)
week_number = models.PositiveSmallIntegerField() week_number = models.PositiveSmallIntegerField()
def save(self, *args, **kwargs):
""" Calcule les valeurs `season` et `week_number` sur base d'une date lors de l'
enregistrement d'un object enfant.
"""
if self.date is not None:
self.season, self.week_number = from_date_to_week_number(self.date)
super().save(*args, **kwargs)
class TemporizableQuerySet(models.QuerySet): class TemporizableQuerySet(models.QuerySet):
""" """