2017-01-17 64 views
0

有沒有什麼辦法來配置夾層,以便管理員用戶在新(普通)用戶註冊時收到一封電子郵件?我有ACCOUNTS_VERIFICATION_REQUIRED=True,所以潛在用戶會收到一封電子郵件,但我不想自己批准帳戶(ACCOUNTS_APPROVAL_REQUIRED)。當用戶註冊時,Mezzanine會發送電子郵件給管理員嗎?

如果這不可能開箱即用,那麼我是否需要自定義accounts應用程序?還是猴子補丁UserProfileAdmin.save_model?什麼是最好的方法?

+1

如果有更簡單的解決方案,但是在Django中使用任何*'save_model'方法之前,不要了解我的頭腦,請考慮使用'pre_save'或'post_save'信號。 https://docs.djangoproject.com/en/stable/topics/signals/ –

回答

0

爲了關閉起見,這裏是我或多或少從Steve MacDonald自己在夾層用戶郵件列表中提交的解決方案。設置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 

這個工作對我非常好。

相關問題