Parcourir la source

Fix three N+1 queries in pin loading

Fetch the submitter with a join and get all the images and tags in one
query each. This reduces the total query count for loading 50 pins from
304 to 158.

See issue #85.
pull/86/head
Jens Gutermuth il y a 9 ans
Parent
révision
60cf2dcbd7
1 fichiers modifiés avec 2 ajouts et 1 suppressions
  1. +2
    -1
      pinry/core/api.py

+ 2
- 1
pinry/core/api.py Voir le fichier

@@ -135,7 +135,8 @@ class PinResource(ModelResource):
filtering = {
'submitter': ALL_WITH_RELATIONS
}
queryset = Pin.objects.all()
queryset = Pin.objects.all().select_related('submitter'). \
prefetch_related('image', 'tags')
resource_name = 'pin'
include_resource_uri = False
always_return_data = True


Chargement…
Annuler
Enregistrer