2013-05-29 27 views
2

要使用HTML標記發送電子郵件,我使用django-templated-email。我怎樣才能改變主題?使用django-templated-email時更改主題

send_templated_mail(
    template_name='druduser/views/register_email', 
    from_email=settings.DEFAULT_FROM_EMAIL, 
    recipient_list=[email], 
    context={'username': username,}, 
) 

我找到了解決辦法:
我必須把{% block subject %}塊出來的{% block html %} ...

感謝您的幫助!從文檔

+0

按照鏈接你提供的文件,它說 - 對於傳統的目的,你可以在你的設置文件中指定的電子郵件主題(但是,首選的方法是在模板中使用{%塊主體%}): TEMPLATED_EMAIL_DJANGO_SUBJECTS = { 'welcome':'歡迎來到我的網站', } – Mutant

+0

在'context'中,試試這個:'context = {'username':username,'subject':'我的新主題'}' – karthikr

回答

2

報價:

對於舊版的目的,你可以在你的設置中指定的電子郵件主題 文件(但是,首選的方法是在 模板使用{%塊主體%})

因此,您可以通過定義subject塊在模板中指定自定義主題權限:請參閱docs


如果你想要去的TEMPLATED_EMAIL_DJANGO_SUBJECTS設置,template_name應該只是一個實際的模板(不含擴展名)的名字。

定義TEMPLATED_EMAIL_DJANGO_SUBJECTS辭典settings.py,如:

TEMPLATED_EMAIL_DJANGO_SUBJECTS = { 
    'welcome':'Welcome to my website', 
} 

定義從哪裏得到的模板和文件擴展名:

TEMPLATED_EMAIL_TEMPLATE_DIR = 'templated_email/' #Use '' for top level template dir 
TEMPLATED_EMAIL_FILE_EXTENSION = 'email' 

然後,只需發送使用welcome郵件作爲template_name

send_templated_mail(
    template_name='welcome', 
    from_email=settings.DEFAULT_FROM_EMAIL, 
    recipient_list=[email], 
    context={'username': username,}, 
    ) 

在此ca你的模板應該在templated_email/welcome.email

希望有所幫助。