# Documentação Django 6.0.7

# FAQ: O admin

## Eu não consigo me autenticar. Quando eu entro com um nome de usuário e senha válidos mostra apenas a página de autenticação novamente, sem mensagens de erro.

O cookie de login não foi definido corretamente pois o domínio do cookie enviado pelo Django não confere com o domínio do seu navegador. Tente alterar as configurações em `SESSION_COOKIE_DOMAIN` para que coincidam com seu domínio. Por exemplo, se você está acessando “https://www.example.com/admin/” em seu navegador, defina `SESSION_COOKIE_DOMAIN = 'www.example.com'`.

## Eu não consigo me autenticar. Quando eu entro com um nome de usuário e senha válidos, apenas retorno para a página de autenticação novamente, com o erro: “Por favor informe o nome de usuário e senha corretos”.

Se você está certo que o nome de usuário e senha estão corretos, assegure-se que esta conta de usuário possua `is_active` e `is_staff` definidos como True. A página de administração só permite acesso a usuários com esses dois campos definidos como Verdadeiro.

## Como eu atribuo o valor de um campo automaticamente para conter o usuário que editou um objeto por último no admin?

A classe `ModelAdmin` possui métodos customizáveis que te permitem tratar um objeto a ser salvo, usando detalhes da requisição. Reescrevendo o método `save_model()` e extraindo o usuário atual da requisição, você pode atualizar um objeto informando qual usuário fez a ação. Veja a documentação sobre os métodos do ModelAdmin para um exemplo.

## Como eu limito o acesso ao admin para que objetos possam ser editados apenas pelos usuários que os criaram?

A classe `ModelAdmin` possui métodos customizáveis que permitem o controle de visibilidade e edição de objetos no admin. Da mesma forma utilizada para extrair o usuário de uma requisição, os métodos `get_queryset()` e `has_change_permission()` podem ser usados para controlar a visibilidade e edição de objetos no admin.

## O CSS e as imagens da interface de admin do meu site são exibidos corretamente quando uso o servidor de desenvolvimento, no entanto eles não estão sendo exibidos quando utilizo mod_wsgi.

Veja: servindo os arquivos de administração na documentação: “Como usar Django com mod_wsgi”.

## Meu “list_filter” contém um campo ManyToManyField, mas o filtro não é exibido.

O Django não se incomodará em exibir o filtro para um `ManyToManyField` se não houver objetos relacionados.

Por exemplo, se seu `list_filter` inclui sites, e não há sites em seu banco de dados, ele não exibirá um filtro “Site”. Nesse caso, filtrar por site não faria sentido.

## Alguns objetos não estão aparecendo na página de administração.

Contagem de linhas inconsistente pode ser causada por valores de chave estrangeiras faltantes ou um campo de chave estrangeira configurado incorretamente para: attr: null = False <django.db.models.Field.null>. Se você tiver um registro com uma classe: ~ django.db.models.ForeignKey ‘apontando para um objeto inexistente e essa chave externa incluída é: attr: ~ django.contrib.admin.ModelAdmin.list_display`, a gravação não será mostrado na lista de alterações do administrador porque o modelo do Django está declarando uma restrição de integridade que não está implementada no nível do banco de dados.

## Como consigo personalizar a funcionalidade da interface de administração?

Você tem várias opções. Se você quiser adicionar em um formulário de adição/alteração que o Django gera automaticamente, você pode incluir módulos JavaScript arbitrários para a página através da classe Admin do modelo parâmetro js. Esse parâmetro é uma lista de URLs, como strings, apontando para módulos JavaScript que serão incluídos dentro do formulário da administração pela tag `<script>`.

Se você quiser mais flexibilidade do que é possível através de ajustes aos formulários gerados automaticamente, sinta-se a vontade para escrever views personalizadas para a parte administrativa. A parte administrativa é feita com Django também, e com isso você pode escrever views customizadas que se acoplem ao sistema de autenticação, chequem permissões ou façam qualquer outra coisa que precisem fazer.

Se você quer personalizar a aparência da interface de administração, leia a próxima pergunta.

## O site de administração gerado dinamicamente é feio! Como posso modificá-lo?

Nós gostamos disso, mas, se você não concorda, você pode modificar a apresentação do site da administração ao editar as folhas de estilo CSS e/ou os arquivos de imagem associados. O site é feito usando HTML semântico e muitas regras CSS, então qualquer mudança que você quiser fazer deve ser possível ao editar as folhas de estilo.

## Quais navegadores são suportados para uso da interface de administração?

O admin fornece uma experiência totalmente funcional para as versões recentes de navegadores modernos em conformidade com os padrões da web. No desktop, isso significa Chrome, Edge, Firefox, Opera, Safari e outros.

Em dispositivos móveis e tablets, o admin fornece uma experiência responsiva para navegadores compatíveis com os padrões da web. Isso inclui os principais navegadores em Android e iOS.

Dependendo do suporte ao recurso, pode haver pequenas diferenças estilísticas entre os navegadores. Estas são consideradas variações aceitáveis na renderização.

## Que tecnologias de acessibilidade são suportadas para utilização na interface de administração?

A interface de administração foi projetada para ser compatível com uma ampla gama de tecnologias de acessibilidade, mas atualmente há muitos obstáculos. O suporte inclui todas as versões mais recentes das principais tecnologias de acessibilidade, como Dragon, JAWS, NVDA, Orca, TalkBack, Controle por Voz, VoiceOver iOS, VoiceOver macOS, Temas de Contraste do Windows, ZoomText e ampliadores de tela.