Reference
PostgreSQL specific aggregation functions
General-purpose aggregation functions
classStringAgg(expression,delimiter,distinct=False,filter=None,default=None,order_by=()) : > WARNING: > > Deprecated since version 6.0: The PostgreSQL StringAgg class is deprecated in favor of the > generally available StringAgg class.
6.0
dev
Reference
Databases
SQLite notes
These are triggered when using the iexact or contains filters in querysets. The behavior splits into two cases: For substring matching, all matches are done case-insensitively. That is a filter such as filter(name__contains="aa") will match a name of "Aabb".
Reference
Conditional Expressions
Advanced queries
What if we want to find out how many clients there are for each account_type?
Reference
Model index reference
Index options
Index.condition If the table is very large and your queries mostly target a subset of rows, it may be useful to restrict an index to that subset. Specify a condition as a Q.
Internals
Django Deprecation Timeline
django.core.paginator.QuerySetPaginator will be removed. A model’s Meta.ordering will no longer affect GROUP BY queries. django.contrib.postgres.fields.FloatRangeField and django.contrib.postgres.forms.FloatRangeField will be removed. The FILE_CHARSET setting will be removed. django.contrib.staticfiles.storage.CachedStaticFilesStorage will be removed. RemoteUserBackend.configure_user() will require request as the first positional argument.
5.2
6.0
dev
Index
| | | | --- | --- | | - W3CGeoFeed (class in django.contrib.gis.feeds) - Warning (class in django.core.checks) - warp() (GDALRaster method) - WASM_UNSAFE_EVAL (CSP attribute) - week - field lookup type - week (WeekMixin attribute) - week_day - …
Internals
Django Deprecation Timeline
Support for passing raw column aliases to QuerySet.order_by() will be removed. The model NullBooleanField will be removed. A stub field will remain for compatibility with historical migrations. django.conf.urls.url() will be removed. The model django.contrib.postgres.fields.JSONField will be removed.
5.0
5.1
5.2
6.0
dev
Internals
Django Deprecation Timeline
The default_app_config module variable will be removed. TransactionTestCase.assertQuerysetEqual() will no longer automatically call repr() on a queryset when compared to string values. django.core.cache.backends.memcached.MemcachedCache will be removed. Support for the pre-Django 3.2 format of messages used by django.contrib.messages.storage.cookie.CookieStorage will be removed.
Internals
Django Deprecation Timeline
Support for pytz timezones will be removed. The is_dst argument will be removed from: QuerySet.datetimes() django.utils.timezone.make_aware() django.db.models.functions.Trunc() django.db.models.functions.TruncSecond() django.db.models.functions.TruncMinute() django.db.models.functions.TruncHour() django.db.models.functions.TruncDay() django.db.models.functions.TruncWeek() django.db.models.functions.TruncMonth() django.db.models.functions.TruncQuarter() django.db.models.functions.TruncYear() The django.contrib.gis.admin.GeoModelAdmin and OSMGeoAdmin classes will be removed. The undocumented BaseForm._html_output() method will be removed.
4.2
5.0
5.1
5.2
6.0
FAQ
FAQ: The admin
Using the same trick of extracting the user from the request, the get_queryset() and has_change_permission() can be used to control the visibility and editability of objects in the admin.
Index
… (class in django.core.files.storage) - FileUploadHandler (class in django.core.files.uploadhandler) - filter - template tag - filter() (django.template.Library method) - (in module django.db.models.query.QuerySet) - filter_horizontal (ModelAdmin attribute) - filter_vertical (ModelAdmin attribute) - filterable (Expression attribute) - FilteredRelation (class in django.db.models) - final_catch_all_view …
Index
… method) - page_kwarg (django.views.generic.list.MultipleObjectMixin attribute) - page_range (Paginator attribute) - PageNotAnInteger - paginate_by (django.views.generic.list.MultipleObjectMixin attribute) - paginate_orphans (django.views.generic.list.MultipleObjectMixin attribute) - paginate_queryset() (django.views.generic.list.MultipleObjectMixin method) - Paginator (class in django.core.paginator) - paginator (ModelAdmin attribute) - (Page attribute) - (Sitemap attribute) - paginator_class …
Index
… django.contrib.postgres.fields) - RangeWidget (class in django.contrib.postgres.forms) - Rank (class in django.db.models.functions) - RasterField (class in django.contrib.gis.db.models) - raw() (in module django.db.models.query.QuerySet) - (Manager method) - raw_id_fields (InlineModelAdmin attribute) - (ModelAdmin attribute) - RawSQL (class in django.db.models.expressions) - re_path() (in module …
Index
… - setting - SecurityMiddleware (class in django.middleware.security) - seekable() (HttpResponse method) - Select (class in django.forms) - select_for_update() (in module django.db.models.query.QuerySet) - select_on_save (Options attribute) - select_related() (in module django.db.models.query.QuerySet) - select_template() (Engine method) - (in module django.template.loader) - SelectDateWidget …
Index
… - unary_union (GEOSGeometry attribute) - Union (class in django.contrib.gis.db.models) - (class in django.contrib.gis.db.models.functions) - union() (GEOSGeometry method) - (in module django.db.models.query.QuerySet) - (OGRGeometry method) - unique (Field attribute) - unique_for_date (Field attribute) - unique_for_month (Field attribute) - unique_for_year (Field attribute) …
How-to
How to write custom lookups
For instance, if you want to filter a queryset based on the equality of the left and right-hand side insensitively to some SQL function. Let’s examine case-insensitive transformations here.
How-to
How to create custom model fields
Writing a field subclassUseful methods
If your custom Field class deals with data structures that are more complex than strings, dates, integers, or floats, then you may need to override from_db_value() and to_python().
Django documentation
… Learn more about it below: Models: Introduction to models | Field types | Indexes | Meta options | Model class QuerySets: Making queries | QuerySet method reference | Lookup expressions Model instances: Instance methods | Accessing related objects Migrations: Introduction …
Internals
Django Deprecation Timeline
The Prefetch.get_current_queryset() method will be removed. The get_prefetch_queryset() method of related managers and descriptors will be removed. get_prefetcher() and prefetch_related_objects() will no longer fallback to get_prefetch_queryset(). The FORMS_URLFIELD_ASSUME_HTTPS transitional setting will be removed.
4.2
5.0
5.1
5.2
dev
Internals
Django Deprecation Timeline
The field_name keyword argument of QuerySet.earliest() and latest() will be removed. See the Django 2.1 release notes for more details on these changes. django.contrib.gis.db.models.functions.ForceRHR will be removed. django.utils.http.cookie_date() will be removed.
4.2
dev