Changes between Version 10 and Version 11 of DocPtTutorial2


Ignore:
Timestamp:
10/16/06 22:33:40 (8 years ago)
Author:
marvinware2005@…
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • DocPtTutorial2

    v10 v11  
    254254   :target: http://media.djangoproject.com/img/doc/tutorial/admin04.png
    255255
     256Por padrão, Django mostra o método ``str()`` de cada objeto. Porém às vezes seria melhor se nós pudéssemos mostrar campos individuais. Para fazer isso, nós usamos a opção ``list_display``, que é uma tupla dos campos a mostrar, como colunas, na pagina "change list" para tal objeto::
     257
     258    class Poll(models.Model):
     259        # ...
     260        class Admin:
     261            # ...
     262            list_display = ('question', 'pub_date')
     263
     264
     265Como demonstração, vamos incluir o método ``was_published_today`` criado no Tutorial 1::
     266
     267    list_display = ('question', 'pub_date', 'was_published_today')
     268
     269Veja como a página está:
     270
     271.. image:: http://media.djangoproject.com/img/doc/tutorial/admin13t.png
     272   :alt: "Change list" dos objetos "Poll"
     273   :target: http://media.djangoproject.com/img/doc/tutorial/admin13.png
     274
     275Você pode clicar nos títulos das colunas para ordenar por seus valores - exceto no caso da coluna ``was_published_today``, porque ordenar pelos valores de um método não é suportado. Note também que o título da coluna do método ``was_published_today`` é, por padrão, o nome do método (com o underscore substituído por espaço). Mas você pode mudar isso criando um atributo ``short_description`` para o método::
     276
     277    def was_published_today(self):
     278        return self.pub_date.date() == datetime.date.today()
     279    was_published_today.short_description = 'Published today?'
     280
     281Vamos melhorar ainda mais nossa "change list": Filtros. Adicione a seguinte linha em ``Poll.Admin``::
     282
     283    list_filter = ['pub_date']
     284
     285Isso adiciona um menu de filtro, que deixa as pessoas filtrarem a "change list" pelo campo pub_date:
     286
     287.. image:: http://media.djangoproject.com/img/doc/tutorial/admin14t.png
     288   :alt: Polls change list page, updated
     289   :target: http://media.djangoproject.com/img/doc/tutorial/admin14.png
    256290}}}
Back to Top