Some ideas added to models.py.

This commit is contained in:
Fred Pauchet 2020-09-27 20:22:20 +02:00
parent 11e2e56a5f
commit 48482f8c31
1 changed files with 26 additions and 10 deletions

View File

@ -1,18 +1,22 @@
# coding=UTF-8
from django.db import models from datetime import datetime, date, time, timedelta
from django.contrib.auth.models import User from django.contrib.auth.models import User
from datetime import datetime, date, time from django.db import models
from base.models import Markdownizable
from django.utils import timezone from django.utils import timezone
from people.models import Gymnast
from location.models import Club
from datetime import datetime, timedelta
import pendulum import pendulum
from base.models import Markdownizable
from location.models import Club
from people.models import Gymnast
def get_week(a_date): def get_week(a_date):
""" """
Remarks:
Je ne comprends pas trop cette fonction...
Tu pars d'une date, et tu récupères le lundi et le samedi de la semaine correspondant ?
""" """
the_date = pendulum.parse(a_date) the_date = pendulum.parse(a_date)
day = the_date.weekday() day = the_date.weekday()
@ -33,6 +37,18 @@ def get_number_of_weeks_between(start, stop):
:param stop: date de fin de la période :param stop: date de fin de la période
:type stop: datetime.date :type stop: datetime.date
:return: Le nombre de semaines entre les deux dates. :return: Le nombre de semaines entre les deux dates.
Remarks:
Proposition d'utiliser isocalendar() sur une date.
L'indice 1 de la valeur de retour donne la semaine correspondant.
Eg.
>>> from datetime import date
>>> d = date(2020, 9, 27)
>>> d.isocalendar()
(2020, 39, 7)
-> Est-ce qu'il ne suffirait pas de faire la différence ?
""" """
tmp = stop - start tmp = stop - start
@ -87,9 +103,9 @@ class TemporizableQuerySet(models.QuerySet):
class Temporizable(models.Model): class Temporizable(models.Model):
""" """Classe abstraite définissant une période comprise entre deux dates.
Classe abstraite définissant deux dates (une da te de début, une date de
fin) et des méthodes de calculs sur base de ces dates. Des méthodes de calculs sur base de ces dates.
""" """
class Meta: class Meta: