Frage

Ich möchte eine ARCHIVE_INDEX Seite für meine django Website machen. Allerdings sind die datumsbasierten generischen Ansichten sind wirklich keine Hilfe. Ich möchte das Wörterbuch der Ansicht zurück die Jahre alle und Monate haben, für die mindestens eine Instanz des Objekttyps existiert. Also, wenn mein Blog im September 2007 begonnen, aber es gab keine Beiträge im April 2008 habe ich so etwas wie dies bekommen könnte

2009 - Jan, Feb, Mar
2008 - Jan, Feb, Mar, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec
2007 - Sep, Oct, Nov, Dec
War es hilfreich?

Lösung

Dies wird Ihnen eine Liste der einzigartigen Buchungsdaten:

Posts.objects.filter(draft=False).dates('post_date','month',order='DESC')

Natürlich könnten Sie nicht den Entwurf Filter benötigen, und ändern Sie ‚post_date‘ auf Ihrem Feldnamen, etc.

Andere Tipps

fand ich die Antwort auf meine eigene Frage.

Es ist auf dieser Seite in der Dokumentation.

Es gibt eine Funktion Daten genannt, die Ihnen verschiedene Termine geben. So kann ich

Entry.objects.dates ( ‚pub_date‘, ‚Monat‘) eine Liste von Datetime-Objekten zu erhalten, eine für jedes Jahr / Monat.

Es soll möglich sein, alle Informationen zu erhalten, die Sie von den integrierten Ansichten beschreiben. Können Sie das konkretisieren, was Sie nicht bekommen kann? Dies sollte alles, was Sie brauchen:

django.views.generic.date_based.archive_month

Referenzseite (Suche nach der obigen Zeichenfolge auf dieser Seite)

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top