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 № 1vous 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