我想将对象过滤到datetime的日期,但无法找到有关如何在任何地方执行此操作的示例。
例如,这可以完美地汇集以下所有事件:
@login_required
def invoice_picker(request):
"""Grab a date from the URL and show all the invoicable deliveries for that day."""
query = request.GET.get('q' , '2/9/1984')
date = datetime
date = datetime.strptime('7/14/2010', '%m/%d/%Y')
date = date.strptime(query, '%m/%d/%Y')
results = []
if query:
results = LaundryDelivery.objects.filter(end__gte=date)
return render_to_response('invoicer.html', {
'results' : results,
'date' : date,
'user' : request.user,
})
但是当我删除__gte时,它什么也没有返回,因为日期是2010-06-22 04:04:00而不是2010-06-22 00:00:00。我也尝试过:
results = LaundryDelivery.objects.filter(end.date=date)
但遗憾的是我收到错误“关键字不能成为表达式”。有什么想法吗?
答案 0 :(得分:8)
我认为将日期时间与日期进行比较并不是一个好方法。一种方法如下:
filter(end__year=date.year, end__month=date.month, end__day=date.day)
另一种是使用range
查找,以及当天的最短时间和最长时间。