2
我正在使用信号发送邮件,并且工作正常(现在我正在测试它并提供静态电子邮件地址)。但我想在我的邮件功能中使用模型字段的动态值。django中的信号问题
例如如果管理员在该模型中更改了管理仪表板中的任何内容,则会使用post_save调用信号,并且会调用邮件功能。但是我需要这个模型的用户id,这样我才能从auth_user表中获取他的名字email_address。
我在post_save中发送模型的名称,但如果可能的话,我不知道如何在信号中使用它们的字段。
现在我正在使用此代码。
我的模型
class ABC(models.Model):
.....
.......
post_save.connect(handlers.model_saved, sender=ABC)
这就是所谓的信号。
from django.core.mail import send_mail
def model_saved(sender, **kwargs):
send_mail('Subject here', 'Here is the message.', '[email protected]',
['[email protected]'], fail_silently=False)
print "SAVED",sender,kwargs
终端响应
<class 'XYZ.models.ABC'> {'raw': False, 'instance': <ABC: #1 admin admin 2013-01-04 04:20:50+00:00>, 'signal': <django.dispatch.dispatcher.Signal object at 0xb612584c>, 'using': 'default', 'created': False}
请建议我一些方法,使我可以在信号使用我的模型领域的瓦莱斯。
谢谢。
感谢您的回复,让我试试这个! – Inforian
是的,它工作!非常感谢 – Inforian
我们可以在handler.py中调用视图函数,因为当我试图在handler.py中导入我的视图时,它会给我提供内部服务器错误。 – Inforian