Странное поведение автодополнения django
Реализовал форму, с автодополнением в админке
В __init__ формы переопределил field.queryset для ограничения выборки
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
model_field = self.fields.get('model_field')
if model_field:
model_field.queryset = model_field.queryset.filter(type=Category.Type.DEFAULT)
if self.instance and self.instance.pk:
model_field.queryset = model_field.queryset.exclude(pk=self.instance.pk)
В результате, форма проходит только при выборе варианта из отфильтрованного queryset, НО в автодополнении выводятся и невалидные варианты.
Версия Django - 3.1.7
Кто знает в чем проблема?