Django模板-“模板”对象没有属性“拆分”

时间:2019-03-22 16:43:24

标签: django django-templates jinja2

我正在使用jinja2在django中渲染模板:

模板设置:

TEMPLATES = [
    {
        "BACKEND": "django.template.backends.django.DjangoTemplates",
        "DIRS": [],
        "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",
            ]
        },
    },
    {"BACKEND": "django.template.backends.jinja2.Jinja2", "DIRS": ["utils/"]},
]

呼叫代码:

html_template = get_template("email/contact/contact.html") #completes successfully - template definitely found

html_message = render_to_string(html_template, context)

出现错误:

AttributeError: 'Template' object has no attribute 'split'

谷歌搜索仅显示以下解决方案:

AttributeError:'NoneType'对象没有属性'split'

建议未找到模板。这里不是这种情况。

1 个答案:

答案 0 :(得分:2)

render_to_string使用模板名称,而不是对象。您无需致电get_template

html_message = render_to_string("email/contact/contact.html", context)