From 2dc93bb10ab1c2af1df9977f1b51d47cadab7b21 Mon Sep 17 00:00:00 2001 From: Matthew Somerville Date: Fri, 22 May 2015 20:16:26 +0100 Subject: Fixed #22316 -- Added time filters to TimeField on SQLite. This was implemented for non-SQLite backends in 1.7 (as a side effect of #16187). --- docs/ref/models/querysets.txt | 45 +++++++++++++++++++++++++++++++------------ 1 file changed, 33 insertions(+), 12 deletions(-) (limited to 'docs/ref') diff --git a/docs/ref/models/querysets.txt b/docs/ref/models/querysets.txt index 0a0749d0c9..a333ce7b56 100644 --- a/docs/ref/models/querysets.txt +++ b/docs/ref/models/querysets.txt @@ -2606,23 +2606,30 @@ in the database `. hour ~~~~ -For datetime fields, an exact hour match. Allows chaining additional field -lookups. Takes an integer between 0 and 23. +For datetime and time fields, an exact hour match. Allows chaining additional +field lookups. Takes an integer between 0 and 23. Example:: Event.objects.filter(timestamp__hour=23) + Event.objects.filter(time__hour=5) Event.objects.filter(timestamp__hour__gte=12) SQL equivalent:: SELECT ... WHERE EXTRACT('hour' FROM timestamp) = '23'; + SELECT ... WHERE EXTRACT('hour' FROM time) = '5'; SELECT ... WHERE EXTRACT('hour' FROM timestamp) >= '12'; (The exact SQL syntax varies for each database engine.) -When :setting:`USE_TZ` is ``True``, values are converted to the current time -zone before filtering. +For datetime fields, when :setting:`USE_TZ` is ``True``, values are converted +to the current time zone before filtering. + +.. versionchanged:: 1.9 + + Added support for :class:`~django.db.models.TimeField` on SQLite (other + databases supported it as of 1.7). .. versionchanged:: 1.9 @@ -2633,23 +2640,30 @@ zone before filtering. minute ~~~~~~ -For datetime fields, an exact minute match. Allows chaining additional field -lookups. Takes an integer between 0 and 59. +For datetime and time fields, an exact minute match. Allows chaining additional +field lookups. Takes an integer between 0 and 59. Example:: Event.objects.filter(timestamp__minute=29) + Event.objects.filter(time__minute=46) Event.objects.filter(timestamp__minute__gte=29) SQL equivalent:: SELECT ... WHERE EXTRACT('minute' FROM timestamp) = '29'; + SELECT ... WHERE EXTRACT('minute' FROM time) = '46'; SELECT ... WHERE EXTRACT('minute' FROM timestamp) >= '29'; (The exact SQL syntax varies for each database engine.) -When :setting:`USE_TZ` is ``True``, values are converted to the current time -zone before filtering. +For datetime fields, When :setting:`USE_TZ` is ``True``, values are converted +to the current time zone before filtering. + +.. versionchanged:: 1.9 + + Added support for :class:`~django.db.models.TimeField` on SQLite (other + databases supported it as of 1.7). .. versionchanged:: 1.9 @@ -2660,23 +2674,30 @@ zone before filtering. second ~~~~~~ -For datetime fields, an exact second match. Allows chaining additional field -lookups. Takes an integer between 0 and 59. +For datetime and time fields, an exact second match. Allows chaining additional +field lookups. Takes an integer between 0 and 59. Example:: Event.objects.filter(timestamp__second=31) + Event.objects.filter(time__second=2) Event.objects.filter(timestamp__second__gte=31) SQL equivalent:: SELECT ... WHERE EXTRACT('second' FROM timestamp) = '31'; + SELECT ... WHERE EXTRACT('second' FROM time) = '2'; SELECT ... WHERE EXTRACT('second' FROM timestamp) >= '31'; (The exact SQL syntax varies for each database engine.) -When :setting:`USE_TZ` is ``True``, values are converted to the current time -zone before filtering. +For datetime fields, when :setting:`USE_TZ` is ``True``, values are converted +to the current time zone before filtering. + +.. versionchanged:: 1.9 + + Added support for :class:`~django.db.models.TimeField` on SQLite (other + databases supported it as of 1.7). .. versionchanged:: 1.9 -- cgit v1.3