Рекомендация по оптимальному шаблонизатору для Python Web Dev в конкретном случае использования - PullRequest
0 голосов
/ 27 сентября 2011

Для Python Web Development существует большой выбор шаблонизаторов.Моя работа ограничена довольно узким / специфическим набором вариантов использования.Их описание может показывать кому-то, кто имеет практические знания со многими / большинством из них, что один из них лучше подходит для моих конкретных случаев использования.Другими словами, в этой группе может быть кто-то, кто был оптимизирован под спецификацию, близкую к моему собственному варианту использования, если да, я хотел бы знать, что это такое.

Вот критерии, которые описывают эти варианты использования:

  • серверный язык - python , но я надеюсь, что мне не нужно много выражений python в моих шаблонах

  • я буду использовать его с веб-серверами python CherryPy и (вероятно) Twisted

  • jQuery это язык, на котором написаны библиотеки / плагины для отображения данных

  • шаблоны описывают абстрактные веб-страницы, используемые для отображения данных ( BIПанель инструментов , является хорошим описанием), как только сервер доставляет данные в шаблон (в ответ на выбор форм, представленный на предшествующей странице), я просто хочу отобразить данные в сетке , например,подключаемый модуль jQuery jqgrid или график, например, один из стандартных типов в Flot

  • производительность имеет решающее значение, но область действия очень узка - только для обработки данных и рендеринга - я ожидаю, что сетки будут частозаполняться несколькими тысячами строк данных (хотя сама сетка будет разбита на страницы);аналогично, графики могут легко иметь около тысячи точек данных, хотя, опять же, предварительная обработка и вычисления будут выполняться в других местах

  • очень небольшая потребность в богатом синтаксисе (нет необходимости всложное многопоточное ветвление и т. д.) - я предпочитаю выполнять любые процессы / вычисления на сервере (и опять же, фильтрация данных почти всегда будет выполняться с помощью плагина jQuery, который я использую для визуализации данных)

  • аналогично, взаимодействие пользователя с отображаемыми данными происходит через нативные элементы, предоставляемые плагином jQuery (например, перелистывание страниц вверх / вниз, сортировка и т. Д.)

  • «удобный для дизайнера» шаблон не очень важен (не потому, что я не люблю дизайнеров, а потому что требуемые усилия по дизайну должны быть достаточно низкими, чтобы я мог это сделать.

Ответы [ 3 ]

1 голос
/ 27 сентября 2011

Возможно, вы захотите взглянуть на Jinja2 . Он предлагает предварительную компиляцию шаблонов, допускает знакомый синтаксис Python и не зависит от фреймворка.

1 голос
/ 27 сентября 2011

Если ваши требования к шаблонам действительно просты, то я предлагаю вам использовать Встроенный в Python механизм форматирования строк ...

0 голосов
/ 27 сентября 2011

Мако , Jinja2 , Гепард и шаблон Django все это делают. В этом отношении все в этом списке будет работать, также: http://wiki.python.org/moin/Templating

Ни одно из требований не представляет особого интереса. Они не указывают ни на один продукт, потому что они очень общие.

Кроме этого, который не принадлежит.

аналогично, взаимодействие пользователя с отображаемыми данными осуществляется через нативные элементы, предоставляемые плагином jQuery (например, перелистывание страниц вверх / вниз, сортировка и т. Д.)

Это не имеет значения. Ни один пользователь не может взаимодействовать с шаблоном. Они взаимодействуют с веб-страницей, которая предоставляет данные для шаблона.

...