Hot para adicionar a capacidade de pesquisar em UserProfile para UserAdmin em Django | search_fields w / ChaveEstrangeira

StackOverflow https://stackoverflow.com/questions/1806424

  •  05-07-2019
  •  | 
  •  

Pergunta

Estou usando o gerenciamento de usuário do Django em combinação com UserProfiles que estão ligados ao modelo de usuário com ForeignKeys. Agora, eu gostaria de fazer campos de perfis dos usuários pesquisável do UserAdmin.

Meu melhor palpite era usuário algo como isto:

class UserAdmin(auth.admin.UserAdmin):

    def field_name(self, obj):
        return obj.get_profile().name

    list_display = ('field_name',)

    search_fields = ('field_name',)

Considerando list_display funciona bem, search_fields dá-me uma mensagem de erro ao enviar uma consulta: Não é possível resolver palavra-chave 'field_name' no campo. As opções são: [...]

Você tem alguma idéia de como fazer isso? Agradecemos antecipadamente.

Foi útil?

Solução

Você pode usar a notação queryset com o duplo sublinhado __ para indicar se junta por exemplo.

 search_fields = ('company_name','user__username')

http: // docs. djangoproject.com/en/dev/topics/db/queries/#lookups-that-span-relationships

para mais

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top