2014-02-26 24 views
1

我在嘗試使用exclude()查詢來排除與用戶配置文件同一天創建的對象。用戶的user.created場是DateTimeField,但我想排除在同日期爲用戶創建的所有對象:如何排除在Django當天創建的項目

我想:

my_objects = MyClass.objects.exclude(created__contains=user.created.date()) 

但它拋出這個錯誤:Warning: Incorrect datetime value: '%2013-09-14%' for column 'created' at row 1

有沒有更好的方法或解決這個問題的方法?

回答

3

比較yearmonthday

d = user.created 
my_objects = MyClass.objects.exclude(
    created__year=d.year, 
    created__month=d.month, 
    created__day=d.day 
) 

或日期(含),第二天(獨家)

d = user.created.date() 
my_objects = MyClass.objects.exclude(
    created__gte=d, 
    created__lt=d + datetime.timedelta(days=1) 
) 
比較