有没有办法使用django-contact-form发送html电子邮件?
答案 0 :(得分:2)
我只是查看了源代码而它没有内置。
你可以随意修改它 - 它是一个非常简单的形式,非常易读。
您需要添加一个html_template变量/路径并修改保存行,并添加一种方法来指定要使用的模板。
def save(self, fail_silently=False):
"""
Build and send the email message.
"""
data = self.get_message_dict()
msg = EmailMultiAlternatives(subject=data['subject'], body=data['message'], from_email=data['from_email'], to=data['recipient_list'])
msg.attach_alternative(loader.render_to_string('path_to_my_html_template.html', self.get_context()), "text/html")
msg.send(fail_silently=fail_silently)
这样可以更容易地将所有更改保存在一个位置。
否则,您可以重写大部分代码并更改get_message_dict()
中的方法名称和字符串,以反映EmailMessage
的新字段名称
坦率地说,我不确定为什么send_mail应该有不同于EmailMessage