Как кодировать динамическую переменную Django из HTML-шаблона в кодировании Python - PullRequest
0 голосов
/ 22 мая 2019

Я хотел бы закодировать '{{variable}}' и '{% for loop ...%}' из шаблона в переменную с именем 'html'. Так что я могу представить его в виде файла PDF, используя pisa.CreatePDF. Я использую xhtml2pdf для создания PDF.

html="<html><body>{% for inventory in filter.qs %} {{ inventory.pk }} {{ inventory.name }} {{ inventory.price }} {{ inventory.quantity }} {% endfor %} </body></html>". 

код выше не работает.

не дает никаких значений из базы данных. Просто текст ниже: {% для инвентаря в файле filter.qs%} {{инвентарь.pk}} {{инвентарь.имя}} {% endfor%} в выводе PDF.

1 Ответ

0 голосов
/ 22 мая 2019

Примерно так:

from django.template import Template, Context

html = """
<html>
<body>
  {% for inventory in inventories %} 
    {{ inventory.pk }} {{ inventory.name }} {{ inventory.price }} {{ inventory.quantity }} 
  {% endfor %} 
</body>
</html>
"""
t = Template(html)
inventories  = Inventory.objects.all()
c = Context({'filter': filter})
raw_html = t.render(c)
print(raw_html)

Подробнее на: https://docs.djangoproject.com/en/2.2/ref/templates/api/#rendering-a-context

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...