向ListView Django添加条件筛选器
我有一份活动清单。使用ListView渲染它们 在models.py中向ListView Django添加条件筛选器,django,django-views,django-filter,django-generic-views,Django,Django Views,Django Filter,Django Generic Views,我有一份活动清单。使用ListView渲染它们 在models.py中 def event_date_time(self): event_date_time = datetime.combine(self.event_date, self.event_time) return event_date_time 在ListView中,我还有now=datetime.utcnow() 需要向queryset添加筛选器 if now > event_date_time:
def event_date_time(self):
event_date_time = datetime.combine(self.event_date, self.event_time)
return event_date_time
在ListView
中,我还有now=datetime.utcnow()
需要向queryset添加筛选器
if now > event_date_time:
#don't render that event
else:
#render
您不能在Django筛选中使用模型函数。您应该使用DateTimeField将事件日期和事件时间存储在一个属性中。然后,在ListView中,重写“get_queryset”函数,如下所示:
def get_queryset(self):
return Event.objects.filter(event_datetime__gte=datetime.now())