Commit dd99f577 authored by Richard Eames's avatar Richard Eames Committed by Tim Graham
Browse files

Fixed #24613 -- Added example to QuerySet.defer() documentation

parent 8ae04e76
Loading
Loading
Loading
Loading
+24 −0
Original line number Diff line number Diff line
@@ -1354,6 +1354,30 @@ one, doing so will result in an error.
    reader, is slightly faster and consumes a little less memory in the Python
    process.

    For example, both of these models use the same underlying database table::

        class CommonlyUsedModel(models.Model):
            f1 = models.CharField(max_length=10)

            class Meta:
                managed = False
                db_table = 'app_largetable'

        class ManagedModel(models.Model):
            f1 = models.CharField(max_length=10)
            f2 = models.CharField(max_length=10)

            class Meta:
                db_table = 'app_largetable'

        # Two equivalent QuerySets:
        CommonlyUsedModel.objects.all()
        ManagedModel.objects.all().defer('f2')

    If many fields need to be duplicated in the unmanaged model, it may be best
    to create an abstract model with the shared fields and then have the
    unmanaged and managed models inherit from the abstract model.

.. note::

    When calling :meth:`~django.db.models.Model.save()` for instances with