Автор Тема: Про Smarty  (Прочитано 4394 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Petroffs

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 141
  • +0/-0
  • 0
    • Просмотр профиля
    • http://petroffs.com
Про Smarty
« : 20 Января 2005, 11:29:46 »
Смарти предназначен, как я правильно понял, для
отделения логики от представления.

Хочу лишь узнать правильно ли я делаю...

В файле functins.php обрисовываю функции делающие что
либо, в файле index.php их вызываю и скармливаю Смарти,
 а в файле index.tpl представляю полученные данные.

Так? Мне кажется что что-то не так... А именно, мне
приходится сразу же вызывать все функции, независимо от
того, нужны ли они... Или они (как сказано в доке)
кешируются и потом требуется меньше ресурсов?


//functions.php
get_navigation($id) {
  
//достаю данные из mysql, получаю массив
  
$link=array(1,2,3,...n);
}

//index.php
get_navigation($id);

$smarty->assign("navigation"$link);

//index.tpl 
{foreach key=$link from=$navigation}
  {
$key}

{/foreach}

Укажите пожалуйста, есть ли здесь принципиальная ошибка (я о самой работе со Смарти)?


И если я забью в шаблоне вывод формы, типа {$form}. Но эта форма будет появляться в опред. случае... Тогда в шаблоне лишний раз будет обрабатываться пустая переменная?
Hello world!

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Про Smarty
« Ответ #1 : 20 Января 2005, 11:35:44 »
функция выполняется только в момент обращения к ней.
Цитировать
Petroffs:
Тогда в шаблоне лишний раз будет обрабатываться пустая переменная?

И что? Почему тебя это беспоекоит?

Оффлайн Petroffs

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 141
  • +0/-0
  • 0
    • Просмотр профиля
    • http://petroffs.com
Про Smarty
« Ответ #2 : 20 Января 2005, 12:03:42 »
RomikChef
Цитировать
RomikChef:
функция выполняется только в момент обращения к ней.

да это верно...
Цитировать
RomikChef:
И что? Почему тебя это беспоекоит?

Просто спросил, должно ли так быть...
У меня автоматом, например, генерируется таблица с переменныыми, а их пока нет (пустые) - таблица же сгенерируется... а это уже кривоватый шаблон...
Hello world!

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Про Smarty
« Ответ #3 : 20 Января 2005, 12:57:48 »
Цитировать
Petroffs:
Смарти предназначен, как я правильно понял, для
отделения логики от представления.

С двумя поправками.
1. полностью отделить логику от представления невозможно. Тем более, когда человек слабо представляет себе смысл эжтих терминов. Впрочем, когда представляет - тоже.
2. Смарти предназначен для того, чтобы насильно разделять логику и представление, для тех, у кого не хватает сил сделать это самостоятельно.
Однако, исходя из п.1, ради этого разделения приходится все усложнять и усложнять код. В результате мы имеем еще один язык, в котором логики - полные штаны.

Оффлайн Алексей

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 176
  • +0/-0
  • 0
    • Просмотр профиля
    • http://
Про Smarty
« Ответ #4 : 20 Января 2005, 14:02:41 »
RomikChef
ты действительно такой ярый противник шаблонизаторов? :)

Оффлайн Petroffs

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 141
  • +0/-0
  • 0
    • Просмотр профиля
    • http://petroffs.com
Про Smarty
« Ответ #5 : 20 Января 2005, 14:21:17 »
так ответа на вопрос - так ли все делаеца (концептуально):
Цитировать
Petroffs:

//functions.php 
get_navigation($id) { 
  
//достаю данные из mysql, получаю массив 
  
$link=array(1,2,3,...n); 


//index.php 
get_navigation($id); 

$smarty->assign("navigation"$link); 

//index.tpl 
{foreach key=$link from=$navigation
  {
$key}
 
{/foreach}


не нашел!
Hello world!

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Про Smarty
« Ответ #6 : 20 Января 2005, 15:02:04 »
Алексей я не противник.
просто для большинства из нихя не вижу смысла в большинстве случаев.

Petroffs
Ну, может быть, кто-нибудь ответит еще :-)

Оффлайн Petroffs

  • Фанат форума
  • Постоялец
  • ***
  • Сообщений: 141
  • +0/-0
  • 0
    • Просмотр профиля
    • http://petroffs.com
Про Smarty
« Ответ #7 : 20 Января 2005, 16:17:31 »
Цитировать
RomikChef:
из нихя не вижу

Учитывая особенности русского языка, я чуть было не так понял :)

А Смарти - я его проверяю, пытаюсь понять, чем же он так хорош, раз его так малюют... Вот и смотрю как его "кушать" надо...
Hello world!

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28