django datetime.datetime ошибка - PullRequest
       8

django datetime.datetime ошибка

2 голосов
/ 17 декабря 2010

Следуя инструкциям здесь , я приступаю к тому, где вы запускаете poll.was_published_today, и я получаю эту ошибку:

Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/myDir/mySite/polls/models.py", line 11, in was_published_today
    return (self.pub_date() == datetime.date.today())
TypeError: 'datetime.datetime' object is not callable

Вот код для моего класса опроса:

from django.db import models
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() == datetime.date.today())

Я пробовал несколько разных вещей, и это всегда давило любое упоминание о "дате и времени".

Этот код:

import datetime
datetime.date.today()

при запуске в интерпретаторе работает нормально, как и ожидалось, но в моем файле это не так. Есть предложения?

Ответы [ 2 ]

5 голосов
/ 17 декабря 2010

опечатка.Должно быть

def was_published_today(self):
    return (self.pub_date.date() == datetime.date.today())
2 голосов
/ 17 декабря 2010

Я исправил это. По какой-то причине он обрабатывает import datetime как from datetime import * (Кто-нибудь знает почему?) Так что удаление datetime из

return (self.pub_date.date() == datetime.date.today())

исправил это. Я также решил импортировать datetime first , хотя я не знаю, если это что-то сделало.

Рабочий файл (для меня):

import datetime
from django.db import models

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() == date.today()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...