我正在尝试在django评论框架上设置通知。我已经阅读了这里的文档 -
我已将所有代码添加到我的noticeboard应用程序中,该应用程序当前正在发布评论。向网站发布评论时,它可以正常工作。但是,当我点击允许通知的“启用评论”字段时,我没有收到任何电子邮件。
**更新:
只是为了添加该网站有一个内置的邮件,所以它记录了从网站发出的所有电子邮件,并没有收到任何评论。如果我也取消勾选'启用评论'框,我会收到类似的错误消息 - comment_will_be_posted receiver'pre_save_moderation'kill the comment
所以我知道功能正常。
这是我到目前为止的代码:
//模型的片段
from django.contrib.comments.moderation import CommentModerator, moderator
class Notice(models.Model):
class Meta:
ordering = ['-date']
content_type = 'noticeboard'
title = models.CharField(max_length=255)
sector = models.ForeignKey(BusinessSector, verbose_name="Sector", related_name='notices')
date = models.DateTimeField(auto_now_add=True, verbose_name="Date posted")
copy = models.TextField()
owner = models.ForeignKey('auth.User', related_name='notices')
owner_company = models.ForeignKey('directory.Company', verbose_name='Company')
enable_comment = models.BooleanField()
class EntryModerator(CommentModerator):
email_notification = True
enable_field = 'enable_comment'
moderator.register(Notice, EntryModerator)
我还将文件'comment_notification_email.txt'上传到模板/联系人。
以上代码已包含在一个名为noticeboard的现有应用中,因为这是发布评论的位置。
如果您认为某些内容对您有用,请随时提出任何问题。
我错过了什么!?
谢谢!
答案 0 :(得分:0)
我必须在代码中添加一个If语句来说明是否正在使用邮件程序然后发送电子邮件。否则它不会发送电子邮件。
if "mailer" in settings.INSTALLED_APPS:
from mailer import send_mail
else:
from django.core.mail import send_mail