/ / Comment obtenir 1 jour avant timezone.now () - python, django, timezone, django-timezone

Comment recevoir 1 jour avant timezone.now () - python, django, timezone, django-timezone

J'ai un bouton qui devrait apparaître 1 jour avant la date_début de l'objet modèle. À mon avis, j'ai une fonction qui me dit si la date_début ou la date_fin de l'objet est maintenant.

    def has_engagement(self):
from rental.models import Inquiry
inquiries = Inquiry.objects.filter(inquiryequipment__equipment=self).filter(start_date__lte= timezone.now()).
filter(end_date__gte=timezone.now()).filter(status="CO")
if not inquiries:
return False
# no current confirmed engagement
else:
return True
# there is a current confirmed engagement

au lieu de cela, je dois vérifier si aujourd'hui est un jour avant les dates de début ou de fin. Des idées? Merci

Réponses:

0 pour la réponse № 1

vous pouvez utiliser timedelta comme ci-dessous:

previous = timezone.now() - timedelta(1)  # returns date object of previous day
next = timezone.now() + timedelta(1)  # returns date object of next day
Inquiry.objects.filter(start_date__lte=previous, end_date__gte=next, status="CO", inquiryequipment__equipment=self)

Notez que vous pouvez filtrer le jeu de requêtes et les requêtes à l'aide de virgules séparées