﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
32587	Use RelatedManager of parent object in get_queryset of inlines and support prefetching	Andreas Galazis	nobody	"This would help support prefetching configuration on parent admin's queryset. 
This is not sufficient to support prefetching since there are multiple (I have found at least 3) instances in inline admin and inline formset where `self.get_queryset()[i]` paradigm is used.

At least perform some code cleanup?

Even if this issue a won't fix for any reason at least abstract fetching instance by in index in a `ge_instance_by_index` method so that we can implement admins that do what we want of top of current base classes. If this is done then we will be able to overwrite ge_instance_by_index to return `list(self.get_queryset())[i]`   instead of `self.get_queryset()[i]` on inlines that support prefetching

Also I believe that the logic about preparing queryset in BaseInlineFormSet should exist in a separate function called `prepare_queryset`:


{{{
def prepare_queryset(queryset):
        if queryset is None:
            queryset = self.model._default_manager
        if self.instance.pk is not None:
            qs = queryset.filter(**{self.fk.name: self.instance})
        else:
            qs = queryset.none()
        return qs
}}}
instead if throwing it `__init__`. Init could just call the above to get the value . This way filtering wouldn't be enforced in the case of related manager querysets since we could overwrite the method."	Cleanup/optimization	closed	contrib.admin	3.2	Normal	duplicate	admin, prefetch, inline		Unreviewed	0	0	0	0	1	0
