计算从上次操作起90天后的日期

时间:2013-01-23 15:03:55

标签: python django

我需要在用户购物车的最后一次操作后计算90天!

我有模型模型ORDERING

class Order(DirtyFieldsMixin, models.Model):
    ...
    items_add_date = models.DateTimeField(null=True, blank=True)
    ...

我的任务是。跟踪用户在自己的购物车中添加最后一项的日期,然后,如果过去90天且用户未在购物车中添加任何其他项目,则会向他发送电子邮件。

我正在做这个

def cart_add(request):
    ...
    order.items_add_date = datetime.datetime.now()
    order.save()
    ...

但我应该采取什么行动以及如何采取行动?

2 个答案:

答案 0 :(得分:0)

不确定您正在努力解决的问题,但如果您需要确定是否需要90天,那么您需要添加支票:

#query for order
order = Order.get(xxx)
ninety  = datetime.datetime.now() - timedelta(days=-90) 
if order.items_add_date < ninety:
    #send email

如果您需要查询超过90天的内容:

order = Order.filter(items_add_date__lt=ninety)

答案 1 :(得分:0)

我解决了这个问题

srok = datetime.datetime.now()-timedelta(minutes=1)
user_unbuying = Order.objects.filter(items_add_date__lt=srok)

usr=[]

for unbus in user_unbuying:
    if unbus.customer.id not in usr:
        if unbus.customer is not None:
            if unbus.items_add_date is not None:
                usr.append(unbus.customer.id)
                #send mail