这一行代码正在接收AttributeError:第一个月
我不知道为什么。我正确地导入了包,如下所示:from django.utils import timezone
但它仍在投掷:Attribute Error: type object 'datetime.timezone' has no attribute 'now'
型号
class Donaci(models.Model):
creation_date = models.DateTimeField(auto_now_add=True, blank=True)
message = models.CharField(max_length=300, null=True, blank=True)
def whenpublished(self):
now = timezone.now()
diff = now - self.creation_date
if diff.days == 0 and diff.seconds >= 0 and diff.seconds < 60:
seconds= diff.seconds
if seconds == 1:
return str(seconds) + "second ago"
else:
return str(seconds) + " seconds ago"
进口
from django.contrib.auth.models import AbstractUser
from django.contrib.auth import settings
from django.utils import timezone
from django.db import models
from datetime import *
2条答案
按热度按时间wfypjpf41#
请使用此选项:
而不是这样:
cyvaqqii2#
答案是:
首先从
django.utils
导入timezone
,但是这被Python的datetime模块的 * import覆盖,该模块也有timezone
(和许多其他东西)。当你执行
timezone.now()
时,它使用的是Python的datetime
timezone
对象,而不是django.utils
timezone
对象,这就是为什么你会看到这个错误:如果以相反的方式导入:
timezone.now()
将工作,因为timezone
对象将被django.utils
timezone
对象覆盖。