Django模板中的提示,用于发送包含绝对路径的电子邮件

时间:2013-01-26 04:59:43

标签: django django-templates

我对Django中的模板有疑问。我创建了一个html电子邮件发送模板,该模板从同一个base.html扩展到网站中的所有页面(继承了样式,页眉和页脚)。

我的问题是:所有网址都是相对的,如果我在我的网站中,但是电子邮件看不到任何内容,因为它不属于域名。

我应该使用绝对路径复制电子邮件的页眉和页脚吗?我应该将应用程序中的所有路径从相对更改为绝对路径吗?在渲染模板时是否有用于更改URL的过滤器?

我希望有人可以给出建议/提示。

此致 克里斯蒂安

1 个答案:

答案 0 :(得分:0)

<强>示例:

<强> views.py

from django.core.mail import send_mail
from django.template.loader import render_to_string

def notify_admin(request, topic):
    message = render_to_string('emails/new_speakup_topic.txt', {
            'topic': topic, 'ip_address': get_ip(request)})
    subject = "Topic: {0}".format(topic.title)
    send_mail(subject, message, from_email,
        ['to_email',])

在模板文件夹中创建电子邮件文件夹,然后将此txt放入电子邮件文件夹

<强> sample.txt的

{{ topic.title }}
Category: {{ topic.category }}
Author: {{ topic.author.username }}
IP: {{ ip_address }}

{{ topic.description }}

https://site.com/speakup/topic/{{ topic.id }}/