python – django: ¿por qué recibo este error: AttributeError: el objeto ‘method_descriptor’ no tiene ningún atributo ‘today’?

Tengo el siguiente código de python:

from django.db import models from datetime import datetime class Poll(models.Model): question = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') def __unicode__(self): return self.question def was_published_today(self): return self.pub_date.date() == datetime.date.today() 

En una shell de python, estoy tratando de ejecutar:

 p = Poll.objects.get(pk=1) p.was_published_today() 

La primera línea funciona bien, pero la segunda línea me da este error:

AttributeError: el objeto ‘method_descriptor’ no tiene atributo ‘today’

Es probable que desee “importar fecha y hora”, no “desde fecha y hora fecha de importación”.

“date” es una clase en el módulo datetime, pero también es un método en la clase “datetime.datetime”.

La respuesta principal es correcta, pero si no desea importar toda la fecha y hora, puede escribir

 from datetime import date 

y luego reemplazar

 datetime.date.today() 

con

 date.today() 

Necesitas hacer como este (salida ipython)

 En [9]: datetime.today (). Date ()
 Fuera [9]: datetime.date (2011, 2, 5)

Así que necesito estar

 def was_published_today (self):
         return self.pub_date.date () == datetime.today (). date ()