Cercando di ottenere una query in cui il record dell'attività è scaduto nel mio indice Solr. Voglio verificare se la data Activity.updated
nel database è maggiore dello Activity.added_toSolr_date
per lo stesso record.Come creare un filtro queryset Django confrontando due campi data nello stesso modello
stale_activities_queryset = Activity.objects.filter(updated__gte = self.added_toSolr_date)
Modello
class Activity(models.Model):
# Last time entry/metric was updated in the Activity model database
updated = models.DateTimeField(verbose_name="CRUD date")
# When it was added to Solr Index Date
added_toSolr_date = models.DateTimeField(blank=True, null=True, verbose_name="Added to Solr Index Date")
ho fatto riferimento docs Django query: https://docs.djangoproject.com/en/1.4/ref/models/querysets/ e l'unità di test per i campioni: https://github.com/django/django/blob/master/tests/modeltests/or_lookups/tests.py
cercato anche qui in StackOverflow. Tutti gli esempi utilizzano una data inserita invece di confrontare due campi data nello stesso modello.
Grazie mille! Come l'hai scoperto? –
@CarlosFerreira, attraverso anni di utilizzo di Django ogni giorno. Non posso davvero dire quando. –
bella soluzione! ha pubblicato quasi la stessa domanda – Ron