Ответ на собственный вопрос может показаться немного странным, но я нашел другое решение;)
Возникла проблема с предоставлением пользовательского набора запросов для набора форм, в случае встроенных наборов форм для этого нет хука. Поэтому я вложил в класс BaseInlineFormSet и переопределил метод get_queryset. Затем я просто предоставляю этот набор форм в InlineModelAdmin, и все готово.
Пример:
class MyFormSet(BaseInlineFormSet):
def get_queryset(self):
if not hasattr(self, '_queryset'):
qs = super(MyFormSet, self).get_queryset().filter(main=False)
self._queryset = qs
return self._queryset
и класс администратора:
class MyInline(admin.TabularInline):
model = m.MyModel
formset = MyFormSet
...