djangodocs.org

769 sections in Django dev Search all versions →

Creating objects

Topic guide Making queries

To represent database-table data in Python objects, Django uses an intuitive system: A model class represents a database table, and an instance of that class represents a particular record in the database table.

Topic guide Making queries

When spanning a ManyToManyField or a reverse ForeignKey (such as from Blog to Entry), filtering on multiple attributes raises the question of whether to require each attribute to coincide in the same related object.

Forward

Topic guide Making queries

Subsequent accesses to the foreign key on the same object instance are cached. Example: Note that the select_related() QuerySet method recursively prepopulates the cache of all one-to-many relationships ahead of time. Example:

Example

Topic guide Pagination

… you methods for accessing the items for each page: NOTE: Note that you can give Paginator a list/tuple, a Django QuerySet, > or any other object with a count() or __len__() method. When > determining the number of objects contained …

Assertions

Topic guide Testing tools

SimpleTestCase.assertJSONNotEqual(raw,expected_data,msg=None)[source] : Asserts that the JSON fragments raw and expected_data are not equal. See assertJSONEqual() for further details. TransactionTestCase.assertQuerySetEqual(qs,values,transform=None,ordered=True,msg=None)[source] : Asserts that a queryset qs matches a particular iterable of values values.

H

Index

| | | | --- | --- | | - handle() (BaseCommand method) - handle_app_config() (AppCommand method) - handle_label() (LabelCommand method) - handle_no_permission() (AccessMixin method) - handle_raw_input() (FileUploadHandler method) - handler400 (in module django.conf.urls) - handler403 (in module django.conf.urls) - …

M

Index

| | | | --- | --- | | - m (LineString attribute) - (Point attribute) - mail_admins() (in module django.core.mail) - mail_managers() (in module django.core.mail) - MAILERS - setting - mailers (in module django.core.mail) - MAILERS-BACKEND - setting - …

A lookup example

How-to How to write custom lookups

You will need to ensure that this registration happens before you try to create any querysets using it. You could place the implementation in a models.py file, or register the lookup in the ready() method of an AppConfig.

ModelAdmin options

Reference The Django admin site

ModelAdmin.save_as : Set save_as to enable a “save as new” feature on admin change forms. ModelAdmin.save_as_continue : When save_as=True, the default redirect after saving the new object is to the change view for that object.

A simple example

Reference The syndication feed framework

This simple example, taken from a hypothetical police beat news site describes a feed of the latest five news items: To connect a URL to this feed, put an instance of the Feed object in your URLconf.

Extra instance methods

Reference Model instance reference

In addition to save(), delete(), a model object might have some of the following methods: Model.get_FOO_display() For every field that has choices set, the object will have a get_FOO_display() method, where FOO is the name of the field.

Topic guide Making queries

Django offers a powerful and intuitive way to “follow” relationships in lookups, taking care of the SQL JOINs for you automatically, behind the scenes.

… 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 Paginator Paginator class AsyncPaginator class Page class AsyncPage …

C

Index

… attribute) - contained - field lookup type - contains - field lookup type - contains() (GEOSGeometry method) - (in module django.db.models.query.QuerySet) - (OGRGeometry method) - (PreparedGeometry method) - contains_aggregate (Expression attribute) - contains_over_clause (Expression attribute) - contains_properly - field lookup …

T

Index

… TodayArchiveView (built-in class) - (class in django.views.generic.dates) - token_generator (PasswordResetConfirmView attribute) - (PasswordResetView attribute) - total_error_count() (BaseFormSet method) - totally_ordered (QuerySet attribute) - touch() (cache method) - touches - field lookup type - touches() (GEOSGeometry method) - (OGRGeometry method) - …

values_list()

Reference QuerySet API reference

values_list(*fields,flat=False,named=False) This is similar to values() except that instead of returning dictionaries, it returns tuples when iterated over.

extra()

Reference QuerySet API reference

Example: Always use params instead of embedding values directly into where because params will ensure values are quoted correctly according to your particular backend. For example, quotes will be escaped correctly.

create()

Reference QuerySet API reference

create(**kwargs) acreate(**kwargs) Asynchronous version: acreate() A convenience method for creating an object and saving it all in one step. Thus: and: are equivalent.