WikiDer > Genshi (язык шаблонов)

Genshi (templating language)
Генши
Разработчики)Программное обеспечение Edgewall
изначальный выпуск3 августа 2006 г.; 14 лет назад (2006-08-03)
Стабильный выпуск
0.7 / 27 января 2013 г.; 7 лет назад (2013-01-27)
Репозиторий Отредактируйте это в Викиданных
Операционная системаКроссплатформенность
ТипДвижок шаблонов
Интернет сайтГенши.edgewall.org

Генши это шаблонизатор за XMLсловари, написанные на Python. Genshi используется для простой вставки сгенерированного вывода в языки на основе XML, обычно HTMLи повторно использовать элементы между документами. Синтаксис Генши основан на Дитя, но его архитектура другая. Genshi стремится реализовать некоторые из своих функций при более быстрой обработке шаблонов, динамически обрабатывая шаблоны с использованием потокового API, вместо компиляции шаблонов в код Python.[1]

Genshi можно использовать с несколькими Python веб-фреймворки, Такие как CherryPy,[2][3] TurboGears,[4] Пилоны[5] и web2py.[6] Генши заменил Кида в TurboGears 2.x веб-фреймворк.[7]

Разметка Генши

Генши использует пространства имен вставлять инструкции в HTML. Типичная инструкция представлена ​​в виде атрибут, с выражением Python внутри кавычек. Например, следующее будет отображать абзац с цифрой 4:

 xmlns ="http://www.w3.org/1999/xhtml" xmlns: py ="http://genshi.edgewall.org/">    <body>         py: content ="2 + 2">Это будет заменено на 4</p>    </body></html>

Благодаря использованию пространств имен, Genshi можно использовать в WYSIWYG Редакторы HTML.[8][9]

Различия между Кидом и Генши

  • Генши напрямую интерпретирует шаблоны (в отличие от Kid, который генерирует код Python)[10]
  • Генши использует XInclude для повторного использования шаблона[10]
  • Генши добавляет атрибуты, которых нет у Кида, например ру: выбрать[10]
  • Шаблоны Genshi легче отлаживать, потому что он отслеживает имена исходных файлов шаблонов и номера строк, а ошибки интерпретатора Genshi создают более понятные трассировки стека, чем ошибки Kid. сгенерированный код. [10]

Рекомендации

  1. ^ "Что такое Генши?". Получено 2008-01-20.
  2. ^ "CherryPy - Genshi". Получено 2009-09-26.
  3. ^ "Genshi - CherryPy Tools - Trac". Архивировано из оригинал на 2012-07-04. Получено 2009-09-26.
  4. ^ "Genshi Templating". Архивировано из оригинал на 2012-07-04. Получено 2008-01-20.
  5. ^ "Шаблоны Генши - Поваренная книга пилонов". Архивировано из оригинал на 2012-07-04. Получено 2008-01-20.
  6. ^ "web2py: Корпоративная веб-платформа". Получено 2009-09-26.
  7. ^ Рамм, Марк. «TurboGears 1.1 и выше». Архивировано из оригинал на 2012-07-04. Получено 2008-01-20.
  8. ^ «Выбор языка шаблонов». Архивировано из оригинал на 2010-06-16. Получено 2010-05-30.
  9. ^ «Выбор языка шаблонов». Архивировано из оригинал на 2008-01-17. Получено 2008-01-20.
  10. ^ а б c d «Сравнение Генши с ребенком». Получено 2008-01-20.

внешняя ссылка