Подтвердить что ты не робот

Загрузите шаблон django из базы данных

Я пытаюсь отобразить шаблон django из базы данных вне обычной структуры запроса-ответа djangos. Но, похоже, это нетривиально из-за того, как скомпилированы шаблоны django. Я хочу сделать что-то вроде этого:

>>> s = Template.objects.get(pk = 123).content
>>> some_method_to_render(s, {'a' : 123, 'b' : 456})
>>> ... the rendered output here ...

Как вы это делаете?

4b9b3361

Ответ 1

В этом нет ничего сложного, и это не имеет никакого отношения к структуре запроса/ответа. Все, что вам нужно сделать, это передать строку шаблона в конструктор django.template.Template (BTW, я изменил имя вашей модели, чтобы избежать путаницы):

from django.template import Context, Template
from myapp.models import DbTemplate

s = DbTemplate.objects.get(pk=123).content
tpl = Template(s)
tpl.render(Context(dict(a=123, b=456)))