Prefetch m2m field values in django-admin -


i have own auth user model, inherits permissionsmixin. while i'm visiting django-admin page instance of model, lot of db queries (as have lot of permissions). problem lies here, django/contrib/auth/models.py:

class permission(models.model):  [...]  def __str__(self):     return "%s | %s | %s" % (         six.text_type(self.content_type.app_label),         six.text_type(self.content_type),         six.text_type(self.name)) 

every time permission displayed on admin page, makes query content_type.

question is: can ensure every query involving auth user model, doesn't come code (like django admin) run prefetch_related permissions , content_types?

if need django-admin, can create own admin page using techniques described in official documentation.

for instance:

from django.contrib import admin django.contrib.auth.models import permission  foo.models import user   class useradmin(admin.modeladmin):     def formfield_for_manytomany(self, db_field, request=none, **kwargs):         if db_field.name == 'user_permissions':             kwargs['queryset'] = permission.objects.all().select_related('content_type')         return super(useradmin, self).formfield_for_manytomany(db_field, request, **kwargs)  admin.site.register(user, useradmin) 

Comments