Подайте име на поле към distinct функция:
model_results = teilnehmer.objects.filter(**{filter: term}).order_by().distinct(field)
Също така вашият подход е много несигурен, защото трябва да потвърдите GET стойности, преди да ги предадете на QuerySet . Да използвате django форми може би?
Прочетете и документите за distinct функция тук