我不确定这是不是因为睡眠不足,但我不能为我的生活找出造成这个问题的原因。
AttributeError: 'datetime.date' object has no attribute 'utcoffset'
我正在尝试根据两个条件过滤查询集。
模型
class Member(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, blank=True, null=True)
...
membership_expiry = models.DateField(null=True, blank=True)
club_membership_expiry = models.DateField(null=True, blank=True)
medical_expiry = models.DateField(null=True, blank=True)
查看get_context_data覆盖
def get_context_data(self, **kwargs):
context = super(MembershipReport, self).get_context_data(**kwargs)
members = Member.objects.all()
now = date.today()
thirty_days = now + timedelta(days=30)
context['membership_overdue'] = members.filter(Q(membership_expiry__lte=now) | Q(membership_expiry__gte=now, membership_expiry__lte=thirty_days))
return context
我尝试过使用date.today()
datetime.now()
和django的timezone.now()
三者都犯了同样的错误。
答案 0 :(得分:2)
试试这个,
import pytz
from datetime import datetime
now = datetime.now(tz=pytz.UTC)
答案 1 :(得分:0)
原来是睡眠不足。由于其他答案在这里发布这个给了我一些清晰度并帮助修复了天真的问题。但是错误实际上是因为我在naturaltime
lib上的日期对象而不是naturalday
上调用了humanize
。