通过管理站点修改Django CharField时发送电子邮件通知
我有一个CharField,通常是空的。当字段设置为非空值时,我想向所有经理发送电子邮件通知(使用通过管理站点修改Django CharField时发送电子邮件通知,django,django-admin,django-signals,Django,Django Admin,Django Signals,我有一个CharField,通常是空的。当字段设置为非空值时,我想向所有经理发送电子邮件通知(使用mail\u managers)。对该字段的更改只能通过管理员站点进行 我认为这可能是我可以通过信号来做的事情,但我没有看到列表中列出的适当信号。有什么想法吗?如果不想在字段再次更改时进行更新,您需要向字段添加一些历史记录,但只需向模型添加一个保存方法,类似于: 从django.db导入模型 class Test(models.Model): empty_field = models.Cha
mail\u managers
)。对该字段的更改只能通过管理员站点进行
我认为这可能是我可以通过信号来做的事情,但我没有看到列表中列出的适当信号。有什么想法吗?如果不想在字段再次更改时进行更新,您需要向字段添加一些历史记录,但只需向模型添加一个保存方法,类似于: 从django.db导入模型
class Test(models.Model):
empty_field = models.CharField(max_length=20, blank=True)
def save(self):
if self.pk is not None:
orig = Test.objects.get(pk=self.pk)
if orig.empty_field != self.empty_field and len(self.empty_field) > 0:
mail_managers ...
super(Test, self).save() # Call the "real" save() method
看
和
您想在保存记录时发送电子邮件,还是在其他事件中发送?我想在第一次保存记录时发送一封电子邮件,并在CharField model字段中使用非空值。啊!历史值将是关键。当我错过了显而易见的东西时,我会很讨厌。一旦我做了一些旧的_值字段,我就可以使用信号机制了。谢谢很抱歉,代码更新太晚了,没有思考。如果要确保在将值更改回空然后再次更改时不发送邮件,则只需要一个布尔字段来检查该字段是否已从空更改为其他内容:)思维良好sunn0。谢谢。