如何使用django-registration发送电子邮件?

时间:2010-01-13 06:03:31

标签: python django

如何使用django-registration发送电子邮件?

1 个答案:

答案 0 :(得分:7)

django-registration向用户发送电子邮件,例如当他或她注册时。过程如下(如果这是你的问题......)*:

  • 用户填写并提交了注册表单......

  • views.py:187

    new_user = backend.register(request, **form.cleaned_data)
    
  • 例如,
  • backends/default/__init__.py:78

    new_user = RegistrationProfile.objects.create_inactive_user(username, email,
       password, site)
    
  • models.py:79

    if send_email:
        registration_profile.send_activation_email(site)
    
  • 然后在models.py:207

    def send_activation_email(self, site):
        ...
        self.user.email_user(subject, message, settings.DEFAULT_FROM_EMAIL)
    

最后一个方法调用进入django.contrib.auth,尤其是django.contrib.auth.models.User.email_user

P.S。此外,它很粗糙,但通常是对代码库的搜索,例如使用grep或类似工具可以向您显示这样的内容。

* changeset 073835a4269f