Passa il nome del campo a distinct
funzione:
model_results = teilnehmer.objects.filter(**{filter: term}).order_by().distinct(field)
Inoltre il tuo approccio è molto insicuro perché dovresti convalidare GET
valori prima di passarli a QuerySet
. Utilizzare i moduli django forse?
Leggi anche i documenti su distinct
funzione qui