우리 모두 알고있는 (또는해야한다)는, 당신은 이메일 몸 렌더링하는 장고의 템플릿 시스템을 사용할 수 있습니다으로 :이메일 템플릿
def email(email, subject, template, context):
from django.core.mail import send_mail
from django.template import loader, Context
send_mail(subject, loader.get_template(template).render(Context(context)), '[email protected]', [email,])
이 내 마음에 하나의 결함이 있습니다의 제목과 내용을 편집하기를 이메일을 보내려면보기와 템플릿을 모두 편집해야합니다. 관리자 사용자에게 템플릿에 대한 액세스 권한을 부여하는 것은 정당 할 수 있지만 원시 파이썬에 대한 액세스 권한을 부여하지는 않습니다.
당신이 이메일에 블록을 지정하고 이메일 보낼 때 개별적으로 당겨 수 있다면 정말 멋질 것입니다 무엇 :
{% block subject %}This is my subject{% endblock %}
{% block plaintext %}My body{% endblock%}
{% block html %}My HTML body{% endblock%}
하지만 당신은 어떻게 할 것입니까? 한 번에 한 블록 만 렌더링하는 방법에 대해 어떻게 생각하십니까?
음 & * $ # 나를 탈출 텍스트를 방지하기 위해 autoescape을 해제 발견했다. 그것은 작동합니다. from/from-name/reply-to 설정을 허용하기 위해 기본에 더 많은 필드를 추가하는 것을 고려하십시오. – Oli
하, 나는 PITA 인 세 가지 템플릿으로이 작업을 해왔다. 나에게서 명확한 +1! –
나는 그것을 좋아한다. 난 항상 잘 작동하는 별도의 템플릿을 사용했지만 이것은 다루기에 훨씬 더 좋았다. (특히 어쨌든 모든 템플릿에 대해 동일한 컨텍스트를 원하기 때문에). –