gpt4 book ai didi

python - 从 django-admin 命令发送 django 信号?

转载 作者:行者123 更新时间:2023-11-28 16:52:46 24 4
gpt4 key购买 nike

我有一个不寻常的问题。在我的 Django 应用程序中,我使用信号发送电子邮件。除了从 django-admin 命令 - django.core.management.base.NoArgsCommand(通过 manage.py 运行)发出的信号外,所有信号都有效。

我在不同的地方检查了我的信号,除了这个地方它工作。

这是我发送信号的代码:

from django.core.management.base import NoArgsCommand

class Command(NoArgsCommand):
help = "Send email advertisement expiration reminder to users"

def handle_noargs(self, **options):
from app.models import Advertisement, User
from app.signals import ad_expires
from datetime import datetime
start=datetime(datetime.now().year, datetime.now().month, datetime.now().day+4,0,0)
end=datetime(datetime.now().year,datetime.now().month,datetime.now().day+4,23,59)
ads=Advertisement.objects.filter(visible_till__gte=start).filter(visible_till__lte=end)
for ad in ads:
ad_expires.send(self,ad=ad, user=ad.user)
print "Expiration reminders sent to %s users" % len(ads)

我做错了什么吗?

另外,有没有更简单的方法来查看一天内的日期?

最佳答案

快捷方式是:

start = datetime.now() + timedelta(days=4)
end = start + timedelta(days=1)
ads=Advertisement.objects.filter(visible_till__gte=start).filter(visible_till__lt=end)

你能在这里发布你的项目结构吗?我觉得你的代码不错。

关于python - 从 django-admin 命令发送 django 信号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5208588/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com