Mezzanine 可以在用户注册时向管理员发送电子邮件吗?
Can Mezzanine send an email to admin when a user signs up?
有什么方法可以配置 Mezzanine,以便管理员用户在新(普通)用户注册时收到一封电子邮件?我有 ACCOUNTS_VERIFICATION_REQUIRED=True
,所以潜在用户会收到一封电子邮件,但我不想自己批准帐户 (ACCOUNTS_APPROVAL_REQUIRED
)。
如果无法开箱即用,我是否需要自定义 accounts
应用程序?还是猴子补丁 UserProfileAdmin.save_model
?什么是最好的方法?
为了结束,这里是我在夹层用户邮件列表上或多或少地从 Steve MacDonald 本人那里得到的解决方案。设置 ACCOUNTS_PROFILE_FORM_CLASS
允许为用户配置文件 signup/update 指定自定义表单 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
这对我来说效果很好。
有什么方法可以配置 Mezzanine,以便管理员用户在新(普通)用户注册时收到一封电子邮件?我有 ACCOUNTS_VERIFICATION_REQUIRED=True
,所以潜在用户会收到一封电子邮件,但我不想自己批准帐户 (ACCOUNTS_APPROVAL_REQUIRED
)。
如果无法开箱即用,我是否需要自定义 accounts
应用程序?还是猴子补丁 UserProfileAdmin.save_model
?什么是最好的方法?
为了结束,这里是我在夹层用户邮件列表上或多或少地从 Steve MacDonald 本人那里得到的解决方案。设置 ACCOUNTS_PROFILE_FORM_CLASS
允许为用户配置文件 signup/update 指定自定义表单 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
这对我来说效果很好。