Je me suis caché et j'ai appris ici pendant un moment. Maintenant, j'ai un problème que d'une manière ou d'une autre je ne peux pas voir une solution facile. Afin d'apprendre le django, je suis en train de construire une application qui conserve la trace des articles réservés. Ce que je voudrais faire, c'est montrer combien de jours par mois pour une année sélectionnée un article a été réservé.Agrégation Django sur une plage de dates
j'ai les modèles suivants:
Asset(Model)
BookedAsset(Model):
asset = models.ForeignKey(Asset)
startdate = models.DateField()
enddate = models.DateField()
Ainsi, ayant les entrées suivantes:
asset 1, 2010-02-11, 2010-02-13
asset 2, 2010-03-12, 2010-03-14
asset 1, 2010-04-30, 2010-05-01
Je voudrais obtenir retourné les éléments suivants:
asset 1 asset 2
------- -------
Jan = 0 Jan = 0
Feb = 2 Feb = 0
Mar = 0 Mar = 2
Apr = 1 Apr = 0
May = 1 May = 0
Jun = 0 Jun = 0
Jul = 0 Jul = 0
Aug = 0 Aug = 0
Sep = 0 Sep = 0
Oct = 0 Oct = 0
Nov = 0 Nov = 0
Dec = 0 Dec = 0
Je sais que je dois d'abord obtenir le nombre de jours dans une plage de dates (et garder la trace si elles tombent hors du mois en cours et dans le e le mois prochain), puis faire une agrégation sur le nombre de jours. Je suis juste coincé sur la façon de le faire avec élégance dans Django.
Toute aide (ou indice dans la bonne direction) est grandement appréciée.
Vous devriez accepter cette réponse, afin que la communauté puisse dire en un coup d'œil que vous n'avez pas besoin d'aide supplémentaire. –