django-registration在用户设置为活动时发送电子邮件

时间:2013-05-30 13:46:49

标签: django django-registration

我有一个用例,django-registration提供了大部分所需的功能。我需要做一些“额外”的事情。默认情况下,django-registration支持此工作流程:

  
      
  1. 用户通过提供用户名,电子邮件地址和密码来注册帐户。
  2.   
  3. 根据此信息,会创建一个新的用户对象,其is_active字段设置为False。此外,还会生成并存储激活密钥,并向用户发送一封电子邮件,其中包含单击以激活帐户的链接。
  4.   
  5. 点击激活链接后,新帐户将处于有效状态(is_active字段设置为True);在此之后,用户可以登录。
  6.   

我需要在第3步之后(或作为其一部分)发送“入门”电子邮件;即,当用户帐户变为“活动”时(即,从django-registration的角度来看,“激活”是“完成”)。

如何在上述工作流程中插入此内容?我想使用django-registration并避免重新发明轮子。

1 个答案:

答案 0 :(得分:1)

django-registration提供user_activated信号(阅读here)。

应使用以下代码截取信号:

from registration.signals import user_activated
from django.dispatch import receiver

@receiver(user_activated)
def my_callback(sender, user, request):
    # handle signal