2010-12-15 12 views
0

ich ein Modell mit einem Feld erstellt habe:Verwenden Djangos get_or_create ein Modell für jeden Tag zu schaffen

date = models.DateTimeField(auto_now_add=True) 

ich einen neuen Rekord für jeden Tag erstellt werden soll, dass dieses Objekt zugegriffen wird. Ich nehme an, ich sollte Djangos Funktion get_or_create verwenden, um das Objekt zu erhalten, das bereits existiert, oder ein neues Objekt mit dem heutigen Datum erstellen. Aber wie überprüfe ich, ob das Datum = heutiger Monat/Tag/Jahr ist?

Antwort

1

Sie sollten DateField anstelle von DateTimeField verwenden, und wenn Sie etwas komplexer (wie ein neues Feld pro Stunde) erstellen müssen, sollten Sie versuchen, ein eigenes Feld zu erstellen oder Filter zu verwenden.

Wenn Sie Filter verwenden möchten, tun nur so etwas wie dieses:

get_or_create(Model, date__year=datetime.now().year, [...])

Sie können auch einen cron-Task erstellen, die ein Feld jeden Tag erstellen.

können diese Artikel auf Ihre Frage stellen:

Verwandte Themen