| 290 | |
| 291 | O tipo de filtro mostrado depende do tipo do campo que você está filtrado. Como ``pub_date`` é um DateTimeField, Django sabe que as opções de filtro padrão são: "Any date," "Today," "Past 7 days," "This month," "This year." |
| 292 | |
| 293 | Isso está tomando forma. Vamos adicionar alguma funcionalidade de busca:: |
| 294 | |
| 295 | search_fields = ['question'] |
| 296 | |
| 297 | Isso adiciona uma caixa de busca em cima da "change list". Quando alguém digita os parâmetros de busca, Django ira buscar pelo campo ``question``. Você pode usar quantos campos você quiser - como esse recurso usa um SQL com LIKE por trás dos panos, não exagere, para deixar seu banco de dados feliz. |
| 298 | |
| 299 | Finalmente, como objetos "Poll" tem uma data, seria conveniente ser possível realizar uma quebra (drill down) por data.Adicione essa linha: |
| 300 | |
| 301 | date_hierarchy = 'pub_date' |
| 302 | |
| 303 | Isso adiciona uma navegação hierárquica, por data, no topo da "change list". Em primeira instância, são mostrados todos os anos disponíveis. Então aumenta o detalhamento em meses, e por último em dias. |
| 304 | |
| 305 | Agora é também uma boa hora para notar que as mudanças têm paginação por padrão. O tamanho padrão da paginação é de 50 itens por página. Paginação na "change list", buscas, filtros, hierarquia de dados e ordenação pelo título da coluna funcionam integrados como você pensa que eles deveriam. |
| 306 | |
| 307 | Personalizando a aparência (look and feel) do admin: |
| 308 | ==================================================== |
| 309 | |
| 310 | Logicamente, tendo "Django administration" e "example.com" no título de cada página de administração é ridículo. Isto é só um texto padrão. |
| 311 | E isso é fácil de mudar, usando o sistema de templates do Django. A administração do Django é feita no próprio Django, e sua interface usa o próprio sistema de templates do Django. (!!!) |
| 312 | |
| 313 | Abra seu arquivo de configurações (lembre-se, ``mysite/settings.py``) e olhe em ``TEMPLATE_DIRS``. ``TEMPLATE_DIRS`` é uma tupla de diretórios a checar quando se vai carregar um template Django. É um diretório de busca. |
| 314 | |
| 315 | Por padrão, ``TEMPLATE_DIRS`` é vazio. Então, vamos adicionar uma linha, para dizer ao Django onde nossos templates estão:: |
| 316 | |
| 317 | TEMPLATE_DIRS = ( |
| 318 | "/home/mytemplates", # Change this to your own directory. |
| 319 | ) |