当用户注册时,Mezzanine可以向管理员发送电子邮件吗?

时间:2017-01-17 17:58:52

标签: python django mezzanine

有没有办法配置Mezzanine,以便管理员用户在新(常规)用户注册时收到电子邮件?我有ACCOUNTS_VERIFICATION_REQUIRED=True,因此潜在用户会收到一封电子邮件,但我不想自己批准帐户(ACCOUNTS_APPROVAL_REQUIRED)。

如果这不是开箱即用的,我是否需要自定义accounts应用?还是猴子补丁UserProfileAdmin.save_model?什么是最好的方法?

1 个答案:

答案 0 :(得分:0)

为了结束,这里的解决方案我或多或少都是从史蒂夫麦克唐纳自己在夹层用户邮件列表上提交的。设置ACCOUNTS_PROFILE_FORM_CLASS允许为用户配置文件注册/更新指定自定义表单类。所以,在settings.py集合中:

ACCOUNTS_PROFILE_FORM_CLASS = "myapp.forms.MyCustomProfileForm"

myapp.forms.py中发送有关保存的电子邮件:

from mezzanine.accounts.forms import ProfileForm

class MyCustomProfileForm(ProfileForm):
    def save(self, *args, **kwargs):
        user = super(MyCustomProfileForm, self).save(*args, **kwargs)
        if self._signup:
            # send email here
        return user

这对我很有用。