Django で毎日または毎週のダイジェスト メールを生成する既存のプラグインはありますか? (私たちは多くの小さな通知を 1 つの電子メールにまとめたいと考えています。
Django-mailer はこれをサポートしていると主張していますが、実際にはそうではないと言われています。
Django で毎日または毎週のダイジェスト メールを生成する既存のプラグインはありますか? (私たちは多くの小さな通知を 1 つの電子メールにまとめたいと考えています。
Django-mailer はこれをサポートしていると主張していますが、実際にはそうではないと言われています。
django で消化したパッケージを PyPIにリリースしました。インスタント通知、毎日および毎週のダイジェスト、およびさまざまな更新グループの個別設定をサポートしています。
今まで知らなかったdjango-mailerアプリがあるので、以下の回答は私自身のアプローチの詳細です。
最も単純なケースでは、それほど多くは必要ありません:
これを に入れ、app/management/commands/send_email_alerts.py
このコマンドを週に 1 回実行するように cron ジョブをpython manage.py send_email_alerts
設定します (もちろん、manage.py がアプリの設定を取得するには、すべてのパスを環境に設定する必要があります)。
from django.core.management.base import NoArgsCommand
from django.db import connection
from django.core.mail import EmailMessage
class Command(NoArgsCommand):
def handle_noargs(self,**options):
try:
self.send_email_alerts()
except Exception, e:
print e
finally:
connection.close()
def send_email_alerts(self):
for user in User.objects.all():
text = 'Hi %s, here the news' % user.username
subject = 'some subject'
msg = EmailMessage(subject, text, settings.DEFAULT_FROM_EMAIL, [user.email])
msg.send()
ただし、各ユーザーに何をどのくらいの頻度でメールするかを追跡する必要がある場合は、追加のコードが必要になります。これは自家製の例です。たぶん、それが django-mailer がギャップを埋めることができる場所です。