Template Toolkit: извлечение части шаблона
Мне было поручено переписать наши самодельные шаблоны с помощью Perl Template Toolkit.
Наши шаблоны имеют возможность извлекать фрагмент шаблона (а затем создавать из него HTML) вместо использования всего шаблона.
Как это сделать с помощью Template Toolkit?
Лучшее решение, с которым я пришел, - это следующее:
Пусть у нас есть шаблон x.html
с фрагментом A
,
Фрагмент должен быть извлечен в новый файл. (Я должен назвать это как x/A.html
для согласованности.) В оригинальном шаблоне x.html
его следует заменить на [% INCLUDE 'x/A.html' %]
, Так что я мог бы использовать либо весь шаблон x.html
или его фрагмент x/A.html
, Возможно, у нас может быть несколько уровней включения, таких как x/A/B.html
,
Есть ли другие способы сделать это? (Мне не нравится идея разбивать его на подкаталоги, как описано выше, но не нашли лучшего решения.)
1 ответ
Вы спрашиваете, есть ли лучший способ извлечь фрагмент из родительского шаблона?
(Ответ: нет, это, вероятно, лучший способ.)
Или вы спрашиваете, есть ли лучший способ организовать добытые фракции?
(Ответ: нет лучшего лучшего ответа, везде будет свой собственный стиль дома - вы не ошибетесь, выбрав любое соглашение.)
Наиболее распространенные соглашения для именования, которые я видел, это подкаталоги x/A.html
и префиксы x_A.html
, Используете ли вы имя родительского шаблона для x
или вы выбираете группирование по функциональности, как предложено simbabque, это другой вопрос вкуса: группировка по функциональности лучше масштабируется на больших и более сложных макетах, где вы можете многократно использовать компоненты, но группировка по сценарию использования концептуально проще в меньших случаях использования с небольшим или без повторного использования компонента.