我想覆盖django-registration app中的send_activation_email,以便能够发送带有html内容而不仅仅是文本的邮件。 请注意,此功能在RegistrationManager模型的模型中定义。
提前多多感谢。
答案 0 :(得分:1)
使用自定义模型,例如:
from registration.models import RegistrationProfile
class CustomRegistrationProfile(RegistrationProfile):
"""
Custom registration profile
"""
class Meta:
proxy = True
def send_activation_email(self, site):
"""
Override method for custom send email
"""
或者,这样的方法覆盖:
from registration.models import RegistrationProfile
def send_activation_email(self, site):
"""
Override method for custom send email
"""
RegistrationProfile.send_activation_email = send_activation_email
答案 1 :(得分:0)
由于RegistrationProfile是一个类,您可以像平常一样覆盖它。因此,您可以创建一个应用程序(或只是一个文件)并创建一个新的代理模型,它将使用您的HTML电子邮件。 (https://docs.djangoproject.com/en/dev/topics/db/models/#proxy-models)
上次我不得不做类似的事情时,我更改了activation_email.txt文件。这是一个更快的解决方案。
虽然可能有一个更简单的选择。