当发生特定事件时,我会向客户发送电子邮件。有多个事件,每个事件都有不同的电子邮件模板。我不想将模板存储在代码中,因为我想避免每次添加新模板时都释放代码。 我在哪里以及如何存储模板? 我目前正在考虑将它们存储在数据库中。但是,如果要更改模板格式,将很困难。有更好的方法吗?
我正在使用django1.9和python3。
答案 0 :(得分:0)
如果您发送广告电子邮件,通知,新闻等,建议您在“模板”文件夹中创建一个名为“电子邮件”的新文件夹及其相应的子文件夹。将这些模板存储在数据库中效率不高。
您应该通过以下代码在settings.py中配置“模板”文件夹:
#settings.py
import os
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
PROJECT_NAME = 'intranet'
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [
os.path.join(os.path.join(BASE_DIR, '%s') % PROJECT_NAME, 'templates')
],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
'django.template.context_processors.i18n',
],
},
},
]
它将在您的项目文件夹中创建一个文件夹,如下图: