From dd99f57710bb4930561a6c049f54719af80850ec Mon Sep 17 00:00:00 2001 From: Richard Eames Date: Tue, 21 Apr 2015 21:42:50 -0600 Subject: [PATCH] Fixed #24613 -- Added example to QuerySet.defer() documentation --- docs/ref/models/querysets.txt | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/docs/ref/models/querysets.txt b/docs/ref/models/querysets.txt index 6fb3dc6aaee..3dc66f631ac 100644 --- a/docs/ref/models/querysets.txt +++ b/docs/ref/models/querysets.txt @@ -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