LINUX.ORG.RU

Чем генерировать статический html используя python?

 


0

2

Есть страницы типа:

<html>
    <p>{{ title }}</p>
    <p>{{ body }}</p>
</html>

Сейчас тыкаю django, но там база данных, которая нафик не нужна, т.к. заливаю html тело из файла внутрь тэгов.

Есть еще варианты использовать BeautifulSoup или даже элементарный replace.

А какие есть еще варианты для генерируемой статики?

PHP возьми, там из коробки всё. Зачем пистон с какими-то костылями?

bread
()
Ответ на: комментарий от KillTheCat

В идеальной ситуации, когда нужно именно это - так и сделаю. В ситуации ТСа, как я ее себе вижу - либо никак, если не это надо, либо через mako или другой template engine.

t184256 ★★★★★
()
Ответ на: комментарий от KillTheCat

Хороший шаблонизатор понимает, куда выводит сгенерированный текст, и экранирует в соответствии с контекстом. Сможет ли так str.format()?

ksa242
()
Ответ на: комментарий от ksa242

Хороший шаблонизатор понимает, куда выводит сгенерированный текст,

Покажи мне его, я его джва года жду.

anonymous
()

django, но там база данных, которая нафик не нужна

не нужна - не используй, в чём проблема?

генерировать статический html

я правильно понял, тебе нужно один раз из шаблонов сгенерить html-файлы и после этого исключить любую server-side динамику с этих страниц? Тогда тебе не нужны никакие фреймворки типа джанго или фласка (и что там ещё выше советовали). Таких генераторов полно, гугли их.

eternal_sorrow ★★★★★
()
Ответ на: комментарий от t184256

В ситуации ТСа, как я ее себе вижу - либо никак, если не это надо, либо через mako или другой template engine.

Так а чем формат не устраивает? Зачем тащить зависимости для такой фигни. Я через формат генерирую скрипты\докерфайлы и все ок.

KillTheCat ★★★★★
()

Jinja, что тут думать.

Dred ★★★★★
()

f-строки, str.format, jinja2 и прочие шаблонизаторы.

f-строки и str.format — часть языка, примитивно и сердито, ничего тащить не нужно.

Шаблонизаторы имеют фичи типа {% if condition %}, {% for element in list %}, наследование и подстановка шаблонов, замены > на &gt; итд.

anonymous
()

Есть еще варианты использовать BeautifulSoup или даже элементарный replace.

нинужно

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.