2010-07-27 97 views
4

我想用datetime过滤对象到当天,但找不到有关如何在任何地方执行此操作的示例。根据日期在Python/Django中过滤,忽略时间

这一点,例如,完美的作品在所有拉动下列事件起来:

@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) 

但不幸的是我得到的错误“关键字不能是一个表达式”。有任何想法吗?

回答

8

我不认为有一个很好的方法来比较日期和日期。一种方法是:

filter(end__year=date.year, end__month=date.month, end__day=date.day) 

另一种方法是使用range查找与最小时间和最大时间为一天。

+0

谢谢Ars。完美的作品。 – 2010-07-27 06:37:06

+0

当然,很高兴提供帮助。 :) – ars 2010-07-27 15:33:56

相关问题