2010-07-27 3 views
4

날짜를 기준으로 오브젝트를 필터링하고 싶지만 어디서나이 작업을 수행하는 방법에 대한 예제를 찾을 수 없습니다.날짜를 기반으로 한 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 4시 4분의 라인을 따라 있기 때문에 아무 것도 반환하지 않습니다를 : 00-06-22 00: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. 완벽하게 작동합니다. –

+0

물론 도움이되어 기쁩니다. :) – ars

관련 문제