Генши (язык шаблонов)
Разработчик(и) | Программное обеспечение Edgewall |
---|---|
Первоначальный выпуск | 3 августа 2006 г |
Стабильная версия | 0.7.9 [1] ![]() |
Репозиторий | |
Операционная система | Кросс-платформенный |
Тип | Шаблонизатор |
Лицензия | Лицензия BSD из 3 пунктов [2] |
Веб-сайт | генши |
Genshi — это шаблонизатор для XML, словарей на основе написанных на Питон . Genshi используется для простой вставки сгенерированных результатов в языки на основе XML, обычно HTML , и повторного использования элементов между документами. Синтаксис Genshi основан на Kid , но его архитектура отличается. Genshi стремится реализовать некоторые из своих функций при более быстрой обработке шаблонов за счет динамической обработки шаблонов с использованием потокового API вместо компиляции шаблонов в код Python. [3]
Genshi можно использовать с несколькими веб-фреймворками Python , такими как CherryPy , [4] [5] ТурбоГирс , [6] Пилоны [7] и веб2пи . [8] Genshi был языком шаблонов по умолчанию для TurboGears начиная с версии 1.1. [9] до 2.3.8. [10]
Генши-разметка
[ редактировать ]Genshi использует пространства имен для встраивания инструкций в HTML. Типичная инструкция задается в виде атрибута с выражением Python в кавычках. Например, следующее отобразит абзац, в котором отображается цифра 4:
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:py="http://genshi.edgewall.org/">
<body>
<p py:content="2 + 2">This will be replaced with 4</p>
</body>
</html>
Благодаря использованию пространств имен Genshi можно использовать в WYSIWYG HTML-редакторах . [11] [12]
Различия между Кидом и Генши
[ редактировать ]- Genshi напрямую интерпретирует шаблоны (в отличие от Kid, который генерирует код Python) [13]
- Genshi использует XInclude для повторного использования шаблонов [13]
- Генши добавляет атрибуты, которых нет у Кида, например
py:choose
[13] - Шаблоны Genshi легче отлаживать, поскольку они отслеживают имена исходных файлов шаблонов и номера строк, а ошибки интерпретатора Genshi создают более понятные трассировки стека, чем сгенерированный код Kid . [13]
Ссылки
[ редактировать ]- ^ «Выпуск 0.7.9» . 15 июня 2024 г. Проверено 22 июня 2024 г.
- ^ «Лицензия – Генши» .
- ^ «Что такое Генши?» . Проверено 20 января 2008 г.
- ^ «CherryPy — Генши» . Проверено 26 сентября 2009 г.
- ^ «Генши — Инструменты CherryPy — Trac» . Архивировано из оригинала 27 февраля 2012 г. Проверено 26 сентября 2009 г.
- ^ «Шаблоны Генши» . Архивировано из оригинала 16 июля 2012 г. Проверено 20 января 2008 г.
- ^ «Шаблоны Генши — Поваренная книга Пилонов» . Архивировано из оригинала 16 апреля 2012 г. Проверено 20 января 2008 г.
- ^ «web2py: корпоративная веб-платформа» . Проверено 26 сентября 2009 г.
- ^ Рамм, Марк. «TurboGears 1.1 и выше» . Архивировано из оригинала 5 июля 2012 г. Проверено 20 января 2008 г.
- ^ Молина, Алессандро. «Обзор документации» . Проверено 18 января 2024 г.
- ^ «Выбор языка шаблонов» . Архивировано из оригинала 16 июня 2010 г. Проверено 30 мая 2010 г.
- ^ «Выбор языка шаблонов» . Архивировано из оригинала 17 января 2008 г. Проверено 20 января 2008 г.
- ^ Jump up to: а б с д «Сравнение Генши с Кидом» . Проверено 20 января 2008 г.