PGHtml — HTML-шаблонизатор с использованием PostgreSQL
Более подробно инcтрумент описан на отдельном сайте pghtml.org


Описание

Инструмент предназначен для создания файлов со статической информацией из базы данных, которая:
PGHtml реализован как служба, которая создает HTML,JS,JSON и другие типы файлы с использованием данных, получаемых из базы данных PostgreSQL.
Файл создается из файла шаблона, в котором проводится подстановка(замена) SQL-запросов, тегов и переменных.
Шаблон имееет префикс расширения pg, т.е. на основе файла index.pghtml будет создан index.html

Подстановки

$$ [SQL query] $$-результат выполнения SQL запроса
<pghtml-include> [file] <>-содержимое файла
${[variable]}-значение переменной


Пример замены

<!-- единичное значение из базы данных -->
$$
select user
$$

<!-- множественые значения -->
$$
select tablename from pg_tables
  where schemaname='pg_catalog' limit 5
$$

<!-- включение файла example_include_ru.html -->
<pghtml-include>include-simple-ru.html</pghtml-include>



<!-- единичное значение из базы данных -->
postgres

<!-- множественые значения -->
pg_statistic
pg_type
pg_foreign_table
pg_proc
pg_attribute

<!-- включение файла example_include_ru.html -->
[ файл example-header-ru.html ]


Пример шаблона

Шаблон
<!DOCTYPE html>
<head>
<title>${title}</title>
</head>

<body>
<h2>${caption}</h2>
${text}
</body>

</html>

Исходная и результирующая страницы
<pghtml-var name="title">Example</pghtml-var>
<pghtml-var name="caption">Multiline text</pghtml-var>
<pghtml-var name="text">
Text line 1
<br>
<i>Text line 2</i>
</pghtml-var>
<pghtml-include>/template/template-common.html</pghtml-include>





<!DOCTYPE html>
<head>
<title>Example</title>
</head>

<body>
<h2>Multiline text</h2>

Text line 1
<br>
<i>Text line 2</i>

</body>

</html>


Ключевые особенности