fenom-template / fenom

Template Engine for PHP. Maintainers wanted!
Other
446 stars 108 forks source link

Set\bind variables #23

Closed WinterSilence closed 11 years ago

WinterSilence commented 11 years ago

Don't find in documentation how set template variables. Fenom has analogues assign\append methods Smarty?

maxisoft-git commented 11 years ago

Функции аналогичных assign и append нет, используется простой ассоциативный массив, который просто передается в класс компиляции и рендера $fenom->display("template/name.tpl", $vars); в частности тут ассоциативный массив содержит все переменные для вывода.

WinterSilence commented 11 years ago

передачу данных при создании и рендеринге видел, к сожалению такой подход не очень удобен в случае большого числа переменных инициализируемых в разных местах. Глобальных(статичных) переменных тоже нет?

maxisoft-git commented 11 years ago

к сожалению такой подход не очень удобен в случае большого числа переменных инициализируемых в разных местах. - ну тут палка о двух концах, могу сказать что я наоборот даже в Smarty отказался от assign так как мне проще было сделать массив $tpl_vars и собрать все в него для вывода после чего передать в шаблонизатор, мне так удобнее было работать. хотя это дело вкуса, глобальных переменных каких POST, GET, SERVER ? - думаю все будет чуть позже, я тоже с этим столкнулся, сейчас вношу правки, и попробую сделать pull-request может автор примет его или сделает свое решение. Шаблонизатор молодой но перспектива на лицо.

WinterSilence commented 11 years ago

не понимаю чем создание и обслуживание дополнительного массива проще. нет речь о static хранилище в шаблонизаторе т.е. переменных доступных во всех шаблонах. например мне нужно данные о пользователе передать в несколько шаблонов, чтобы для каждого шаблона не добавлять отдельно эти данные они добавляются в статичное хранилище.

maxisoft-git commented 11 years ago

нет речь о static хранилище в шаблонизаторе т.е. переменных доступных во всех шаблонах. - пока этого нет, скорее всего будет в 1.1 когда решится вопрос с parent шаблонами, тогда я так думаю возможно добавят и static хранилище. А вообще имеет смысл сделать тикеты, тогда это точно будет реализовано. :)

WinterSilence commented 11 years ago

Не зная функционала нельзя писать тикеты, поэтому и спрашиваю. я уточняю данные моменты еще и потому, что выбираю сейчас новый шаблонизатор, в последующем он будет интегрирован с https://github.com/kohana/core/blob/3.3/master/classes/Kohana/View.php , поэтому конкретно для меня данные проблемы не актуальны. интересуюсь для создания корректной(оптимальной) интеграции.

bzick commented 11 years ago

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

WinterSilence commented 11 years ago

bzick > хозяин - барин, для меня как я говорил не составляет проблем, просто уточнил чтобы понимать какие методы Вида перекрывать методами шаблонизатора. Но все-таки рекомендую посмотреть работу с переменными в View.php, на мой взгляд в плане юзабилити это идеальный вариант.

bzick commented 11 years ago

Реализовано в доплонении https://github.com/bzick/fenom-extra