Melhorando o desempenho dos campos ForeignKey do Django no Admin

Por padrão, o administrador do Django renderiza os campos ForeignKey no admin como um campo de seleção, listando todos os registros na tabela estrangeira como uma opção. Em um modelo acessível ao administrador, estou referenciando o modelo de usuário como uma chave estrangeira e, como tenho milhares de usuários, o Django está preenchendo o select com milhares de opções. Isso está fazendo com que a página de administração seja carregada incrivelmente lentamente, e a seleção não é muito útil, pois pode demorar um pouco para percorrer milhares de opções para encontrar a que você deseja.

Qual é a melhor maneira de alterar a renderização desse campo para melhorar o carregamento e a usabilidade da página? Gostaria que o campo de seleção fosse substituído por algum tipo de botão para iniciar um pop-up de formulário de pesquisa ou um campo de texto que pesquisa palavras-chave via Ajax para encontrar o ID do usuário específico que eles desejam associar. O admin tem algo parecido com este embutido, ou eu teria que escrever isso do zero?

questionAnswers(4)

yourAnswerToTheQuestion