djangodocs.org

705 sections in Django 5.1 Search all versions →

Reference

These functions are available from the django.contrib.postgres.aggregates module. They are described in more detail in the PostgreSQL docs. NOTE: All functions come without default aliases, so you must explicitly provide > one.

Key lookups

Reference PostgreSQL specific model fields HStoreFieldQuerying HStoreField

To query based on a given key, you can use that key as the lookup name: You can chain other lookups after key lookups: or use F() expressions to annotate a key value.

Database Functions

Reference

The classes documented below provide a way for users to use functions provided by the underlying database as annotations, aggregations, or filters in Django.

Some examples

Reference Query Expressions

Both the querysets below are equivalent. >>> Company.objects.filter(num_employees__gt=F("num_chairs") * 2) >>> Company.objects.filter(num_employees__gt=F("num_chairs") + F("num_chairs")) # How many chairs are needed for each company to seat all employees? >>> company = ( ... Company.objects.filter(num_employees__gt=F("num_chairs")) ... .annotate(chairs_needed=F("num_employees") - F("num_chairs")) ... .first() ...

DateTimeField

Reference Model field reference Field types

classDateTimeField(auto_now=False,auto_now_add=False,**options)[source] A date and time, represented in Python by a datetime.datetime instance. Takes the same extra arguments as DateField. The default form widget for this field is a single DateTimeInput. The admin uses two separate TextInput widgets with JavaScript shortcuts.

UUIDField

Reference Model field reference Field types

classUUIDField(**options)[source] A field for storing universally unique identifiers. Uses Python’s UUID class. When used on PostgreSQL and MariaDB 10.7+, this stores in a uuid datatype, otherwise in a char(32). Universally unique identifiers are a good alternative to AutoField for primary_key.

Accessing method calls

Reference The Django template language

… relationship to a model called “task” you can loop through all comments attached to a given task like this: Similarly, QuerySets provide a count() method to count the number of objects they contain. Therefore, you can obtain a count of …

More than just HTML

Topic guide Using mixins with class-based views

For example, a JSON mixin might look something like this: NOTE: Check out the Serializing Django objects documentation for more > information on how to correctly transform Django models and querysets into > JSON.

Topic guide Making queries Related objectsOne-to-many relationships

This Manager returns QuerySets, which can be filtered and manipulated as described in the “Retrieving objects” section above. Example: You can override the FOO_set name by setting the related_name parameter in the ForeignKey definition.

A full example

Topic guide Creating forms from models ModelForm

Consider this set of models: With these models, the ModelForm subclasses above would be roughly equivalent to this (the only difference being the save() method, which we’ll discuss in a moment.):

D

Index

… in django.forms) - DateMixin (class in django.views.generic.dates) - DateRangeField (class in django.contrib.postgres.fields) - (class in django.contrib.postgres.forms) - dates() (in module django.db.models.query.QuerySet) - DATETIME_FORMAT - setting - DATETIME_INPUT_FORMATS - setting - DateTimeField (class in django.db.models) - (class in django.forms) - DateTimeInput …

F

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 …

G

Index

… (django.views.generic.detail.BaseDetailView method) - (django.views.generic.edit.BaseCreateView method) - (django.views.generic.edit.BaseUpdateView method) - (django.views.generic.edit.ProcessFormView method) - (django.views.generic.list.BaseListView method) - (HttpResponse method) - (in module django.db.models.query.QuerySet) - (QueryDict method) - get_absolute_url() (Model method) - get_accessed_time() (Storage method) - get_actions() (ModelAdmin method) - get_all_permissions() (BaseBackend method) …

L

Index

… LANGUAGES - setting - languages (Sitemap attribute) - LANGUAGES_BIDI - setting - last - template filter - last() (in module django.db.models.query.QuerySet) - last_login (models.User attribute) - last_modified() (in module django.views.decorators.http) - last_name (models.User attribute) - lastmod (Sitemap attribute) - LastValue …

N

Index

… attribute) - non_atomic_requests() (in module django.db.transaction) | - NON_FIELD_ERRORS (in module django.core.exceptions) - non_field_errors() (Form method) - none() (in module django.db.models.query.QuerySet) - noop (RunSQL attribute) - noop() (RunPython static method) - NoReverseMatch - normalize() (GEOSGeometry method) - normalize_email() (models.BaseUserManager class …

O

Index

… on_delete (ForeignKey attribute) - one_to_many (Field attribute) - one_to_one (Field attribute) - OneToOneField (class in django.db.models) - only() (in module django.db.models.query.QuerySet) - OpClass (class in django.contrib.postgres.indexes) - opclasses (Index attribute) - (UniqueConstraint attribute) - open() (FieldFile method) - (File method) …

V

Index

… - value_omitted_from_data() (Widget method) - value_to_string() (Field method) - ValueRange (class in django.db.models.expressions) - values() (backends.base.SessionBase method) - (in module django.db.models.query.QuerySet) - (QueryDict method) | - values_list() (in module django.db.models.query.QuerySet) - Variance (class in django.db.models) - vary_on_cookie() (in module django.views.decorators.vary) …

Glossary

queryset : An object representing some set of rows to be fetched from the database. slug : A short label for something, containing only letters, numbers, underscores or hyphens. They’re generally used in URLs.

Custom database types

How-to How to create custom model fields Writing a field subclassUseful methods

The methods are also called when constructing a WHERE clause that includes the model field – that is, when you retrieve data using QuerySet methods like get(), filter(), and exclude() and have the model field as an argument.