首页 > 解决方案 > 我正在尝试设置 django 信号以让某人在创建博客后引起注意

问题描述

但此代码不起作用...在 /blog/create/ 保留类似“TypeError”的错误消息

这是我放在 blog/signals.py 的代码

@receiver(signals.post_save, sender=Post)
def send_mail(sender, instance, created, **kwargs):
    print('signal send')

    subject = "Thank you"
    message = Post.objects.get(??)
    send_mail(subject, 'message', '',
              ['info@*****.com.au'], fail_silently=False, )

?? 问题是……我放了pk=pk,pk=id,不知道这里需要放什么参数……

标签: djangodjango-signals

解决方案


您不需要显式获取Post,您已经将它作为instance发送到信号的参数(根据文档):

instance
正在保存的实际实例。


推荐阅读