Reference
The Django admin site
ModelAdmin objects
ModelAdmin.raw_id_fields : By default, Django’s admin uses a select-box interface (<select>) for fields that are ForeignKey. Sometimes you don’t want to incur the overhead of having to select all the related instances to display in the drop-down.
Reference
The Django admin site
ModelAdmin objects
For example: ModelAdmin.get_search_results(request,queryset,search_term)[source] : The get_search_results method modifies the list of objects displayed into those that match the provided search term. It accepts the request, a queryset that applies the current filters, and the user-provided search term.
Reference
The Django admin site
ModelAdmin objects
This is how list_filter works, for example. The lookups are similar to what’s used in QuerySet.filter() (e.g. [email protected]). Since the lookups in the query string can be manipulated by the user, they must be sanitized to prevent unauthorized data exposure.
Reference
The Django admin site
InlineModelAdmin objects
The shared features are: form fieldsets fields formfield_overrides exclude filter_horizontal filter_vertical ordering prepopulated_fields get_fieldsets() get_queryset() radio_fields readonly_fields view_on_site empty_value_display autocomplete_fields raw_id_fields formfield_for_choice_field() formfield_for_foreignkey() formfield_for_manytomany() has_module_permission() The InlineModelAdmin class adds or customizes: InlineModelAdmin.model : The model which the inline is using.
Reference
The Django admin site
AdminSite objects
Raises django.contrib.admin.exceptions.NotRegistered if a model isn’t registered. AdminSite.get_log_entries(request)[source] : Returns a queryset for the related LogEntry instances, shown on the site index page. This method can be overridden to filter the log entries by other criteria.
Reference
django.contrib.auth
Authentication backends
classAllowAllUsersModelBackend[source] : Same as ModelBackend except that it doesn’t reject inactive users because user_can_authenticate() always returns True. classRemoteUserBackend[source] : Use this backend to take advantage of external-to-Django-handled authentication. It authenticates using usernames passed in request.META['REMOTE_USER'].
Reference
The contenttypes framework
Each ContentType instance has methods that allow you to get from a ContentType instance to the model it represents, or to retrieve objects from that model: ContentType.get_object_for_this_type(using=None,**kwargs)[source] : Takes a set of valid lookup arguments for the model the ContentType …
Reference
GeoDjango Tutorial
Spatial Queries
[4] Import the WorldBorder model, and perform a contains lookup using the pnt_wkt as the parameter: Here, you retrieved a QuerySet with only one model: the border of the United States (exactly what you would expect).
Reference
The sitemap framework
items() is a method that returns a sequence or QuerySet of objects. The objects returned will get passed to any callable methods corresponding to a sitemap property (location, lastmod, changefreq, and priority). lastmod should return a datetime.
Reference
The sitemap framework
classSitemap[source] : A Sitemap class can define the following methods/attributes:
Reference
Databases
MySQL notesConnecting to the database
When running concurrent loads, database transactions from different sessions (say, separate threads handling different requests) may interact with each other. These interactions are affected by each session’s transaction isolation level.
Reference
Databases
MySQL notes
When performing a query on a string type, but with an integer value, MySQL will coerce the types of all values in the table to an integer before performing the comparison.
Reference
Databases
Oracle notes
LOB columns may not be used in a SELECT DISTINCT list. This means that attempting to use the QuerySet.distinct method on a model that includes TextField columns will result in an ORA-00932 error when run against Oracle.
Reference
Query Expressions
Built-in ExpressionsSubquery() expressions
There are times when a single column must be returned from a Subquery, for instance, to use a Subquery as the target of an __in lookup.
Reference
Query Expressions
Built-in Expressions
classRawSQL(sql,params,output_field=None)[source] Sometimes database expressions can’t easily express a complex WHERE clause. In these edge cases, use the RawSQL expression.
Reference
Query Expressions
Built-in Expressions
You can specify multiple windows in the same query which in Django ORM would be equivalent to including multiple expressions in a QuerySet.annotate() call. The ORM doesn’t make use of named windows, instead they are part of the selected columns.
Reference
Query Expressions
Technical Information
Query expressions implement the query expression API, but also expose a number of extra methods and attributes listed below. All query expressions must inherit from Expression() or a relevant subclass.
Reference
Model field reference
Field types
classDateField(auto_now=False,auto_now_add=False,**options)[source] A date, represented in Python by a datetime.date instance. Has a few extra, optional arguments: DateField.auto_now : Automatically set the field to now every time the object is saved. Useful for “last-modified” timestamps.
Reference
Model field reference
classField[source] : Field is an abstract class that represents a database table column. Django uses fields to create the database table (db_type()), to map Python types to database (get_prep_value()) and vice-versa (from_db_value()).
Reference
Model field reference Field attribute reference Model index reference Constraints reference Model _meta API Related objects reference Model class reference Model Meta options Model instance reference QuerySet API reference Lookup API reference Query Expressions Conditional Expressions Database Functions