7.1. ORM About

7.1.1. Create Objects

  • .bulk_create()

  • .create()

  • .get_or_create()

  • .save()

  • .update_or_create()

7.1.2. Update Objects

  • .bulk_update()

  • .save()

  • .select_for_update()

  • .update()

  • .update_or_create()

7.1.3. Delete Objects

  • .delete()

7.1.4. Get One Result

  • .earliest()

  • .first()

  • .get()

  • .get_or_create()

  • .last()

  • .latest()

7.1.5. Get Many Result

  • .all()

  • .complex_filter()

  • .extra()

  • .filter()

  • .reverse()

  • .union()

7.1.6. Narrow Results

  • .exclude()

  • .intersection()

  • .none()

  • .only()

  • .values()

  • .values_list()

  • result[1:]

  • result[1]

  • result[::2]

7.1.7. Check Results

  • .check()

  • .exist()

  • .exists()

  • .explain()

7.1.8. Order Results

  • .order_by()

7.1.9. Performance

  • .prefetch_related()

  • .select_related()

7.1.10. Functions

  • .aggregate()

  • .alias()

  • .annotate()

  • .count()

  • .distinct()

  • .using()

7.1.11. Other

  • .dates()

  • .datetimes()

  • .difference()

  • .in_bulk()

  • .raw()

7.1.12. Lookup

Empty:

  • __isnull

Sequences:

  • __in

Strings:

  • __contains - case sensitive

  • __endswith - case sensitive

  • __exact - case sensitive (default)

  • __icontains - case insensitive

  • __iendswith - case insensitive

  • __iexact - case insensitive

  • __istartswith - case insensitive

  • __startswith - case sensitive

Numeric, Dates:

  • __eq - equals

  • __gt - greater than

  • __gte - greater or equal than

  • __lt - less than

  • __lte - less or eaquan than

Dates:

  • __year

  • __month

  • __day

  • __hour

  • __minute

  • __second

  • __microsecond

  • __range - between two dates

  • __in - a list of dates

7.1.13. Comparing objects

>>> 
... my == other
... my.id == other.id
>>> 
... my == other
... my.name == other.name