Как заставить шаблонизатор Django отображать шаблоны в памяти?

Я храню свои шаблоны в базе данных, и у меня нет пути для предоставления метода template.render.

Есть ли какой-либо открытый метод, который принимает шаблон в виде строки?

Есть ли обходной путь?


person Jader Dias    schedule 14.02.2010    source источник


Ответы (3)


Создать экземпляр Template со строкой для использовать в качестве шаблона.

person Ignacio Vazquez-Abrams    schedule 14.02.2010
comment
Плохо иметь ссылки, которые могут/умрут. Пожалуйста, обновите, или ответ ниже должен быть принятым ответом - person BjornW; 11.11.2019

На основе документов по использованию системы шаблонов:

from django.template import Template, Context

t = Template("My name is {{ my_name }}.")
c = Context({"my_name": "Adrian"})
t.render(c)
person robertzp    schedule 29.07.2014

В Джанго ‹ 1.8:

from django.template.loader import get_template_from_string

tpl = Template(get_template_from_string("My name is {{ my_name }}."))
person Alexander Maretskiy    schedule 26.10.2011
comment
Из документов Django 1.8 : Частный API get_template_from_string(template_code) был удален в Django 1.8, потому что… - person natevw; 15.08.2015