Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

Смарти - зло или нет? (Константин Жинько [tIT])
Goto page Previous  1, 2
Author Message
Юрий Насретдинов
Модератор



Joined: 13 Mar 2003
Posts: 8642
Карма: 198
   поощрить/наказать

Location: 007 495

PostPosted: Wed Sep 27, 2006 8:02 pm ()
   Post subject:
Reply with quote

Я сам лично использую либо пассивные шаблоны (в принципе, тоже с поддержкой исполнения кода пхп), либо чистый пхп. Это, конечно, не соответствует подходу Димы Котерова, но лично мне так удобнее и проще.
Back to top
View user's profile Send private message Send e-mail
Rin
Участник форума



Joined: 01 Jun 2005
Posts: 515
Карма: 185
   поощрить/наказать

Location: Москва

PostPosted: Sat Oct 28, 2006 6:50 pm (спустя 1 месяц 22 часа 48 минут; написано за 43 секунды)
   Post subject:
Reply with quote

Вот что думают по поводу смарти на phpclub.ru :)

phpclub.ru/talk/showthread.php?threadid=92454
Back to top
View user's profile Send private message Send e-mail
Денис Радченко
Заглянувший



Joined: 30 Aug 2006
Posts: 19
Карма: 1
   поощрить/наказать

Location: Чебоксары

PostPosted: Sun Nov 05, 2006 7:01 pm (спустя 8 дней 10 минут; написано за 4 минуты 10 секунд)
   Post subject:
Reply with quote

Перешел с "встроенного php" на Smarty+FormPersister,что существенно повысило производительность труда. Теперь я могу написать код вроде "Привет, {$UserName}", а остальную работу по верстке свалить на верстальщика, который раньше терялся при виде php инструкций.

По идее шаблоны Smarty хорошо заменяются на php код, но в smarty уже встроены блочные функции и модификаторы, да и синтаксис больше понятен непрограммистам
Back to top
View user's profile Send private message
Антон Макаренко
Участник форума



Joined: 05 Feb 2004
Posts: 374
Карма: 37
   поощрить/наказать

Location: Киев

PostPosted: Mon Nov 06, 2006 11:44 am (спустя 16 часов 43 минуты; написано за 8 минут 54 секунды)
   Post subject:
Reply with quote

В модификаторах smarty мне больше всего нравится спекулировать ими. Например, скрипт должен принять данные формы только после валидации, а до валидации выводить ругань и оставлять поля заполнеными тем, что вводил пользователь:
Code (html): скопировать код в буфер обмена
<input (december.com/html/4/element/input.html) type="text" name="some_info" value="{$smarty.post.some_info|escape}" /> (december.com/html/4/element/.html)
Можно пойти дальше -- использовать одну и ту же форму для создания/редактирования записей в БД. Например, backend читает строку в БД, если она выбрана, а шаблонизатор подставляет эти данные в форму:
Code (html): скопировать код в буфер обмена
<input (december.com/html/4/element/input.html) type="text" name="some_info" value="{$current_row.some_info|default:"`$smarty.post.some_info`"|escape}" /> (december.com/html/4/element/.html)
Причем модификаторов "|default" может быть сколько угодно (на практике, правда, больше 2 использовать не возникало потребности)

Денис Радченко
А покажите, как Вы используете Smarty+FormPersister -- интересно.
Back to top
View user's profile Send private message Send e-mail
Дмитрий Котеров
Администратор



Joined: 10 Mar 2003
Posts: 13665
Карма: 412
   поощрить/наказать


PostPosted: Mon Nov 06, 2006 8:09 pm (спустя 8 часов 24 минуты; написано за 1 минуту 21 секунду)
   Post subject:
Reply with quote

Антон Макаренко: кстати, оба примера, которые Вы привели, грешат одним: дублированием "завязок" за имена. Например, в первом случае непонятно, как быть с select-ами и checkbox-ами. Во втором примере - приходится дублировать имя поля. Как раз FormPersister + MetaForm обе эти проблемы решают; и, естественно, никто не мешает их использовать вместе со Smarty.
Back to top
View user's profile Send private message Send e-mail
Антон Макаренко
Участник форума



Joined: 05 Feb 2004
Posts: 374
Карма: 37
   поощрить/наказать

Location: Киев

PostPosted: Tue Nov 07, 2006 12:41 am (спустя 4 часа 31 минуту; написано за 5 минут 34 секунды)
   Post subject:
Reply with quote

С селектами я поступаю так:
Code (html): скопировать код в буфер обмена
{if isset($cur.cat_parent_id)}
{assign var="parent_id" value="`$cur.cat_parent_id`"}
{/if}
{if isset($smarty.post.cat_parent_id)}
{assign var="parent_id" value="`$smarty.post.cat_parent_id`"}
{/if}

<select (december.com/html/4/element/select.html) name="cat_parent_id"> (december.com/html/4/element/.html)
        <option (december.com/html/4/element/option.html) value=""> (december.com/html/4/element/.html)</option>
{foreach from=$categories_plain item=c}
        <option (december.com/html/4/element/option.html) value="{$c.cat_id}"{if $c.cat_id eq $parent_id} selected="selected"{/if}> (december.com/html/4/element/.html){$c.cat_name|escape}</option>
{/foreach}
</select>
Раньше делал все одним большим {if}-ом, там где надо генерировать selected="selected", но этот способ проще для чтения шаблона человеком.

С Чекбоксами -- тоже {if}:
Code (html): скопировать код в буфер обмена
<input (december.com/html/4/element/input.html) type="checkbox" name="sort_desc" value="1" {if $smarty.session.goods_filter.sort_desc}checked="checked" {/if} onchange="document.getElementById('filterform').submit();" /> (december.com/html/4/element/.html)в обратном порядке
Дмитрий Котеров
Действительно, в этих способах привязка к именам порядком утомляет. На досуге попробую скрестить Smarty и FormPersister + MetaForm, может тогда получится избавить технологию от "зла" :)
Back to top
View user's profile Send private message Send e-mail
alexkad
Заглянувший



Joined: 30 Oct 2006
Posts: 4
Карма: 1
   поощрить/наказать


PostPosted: Tue Nov 07, 2006 4:42 am (спустя 4 часа 31 секунду; написано за 16 минут 22 секунды)
   Post subject:
Reply with quote

Константин Жинько [tIT] wrote:
Смарти - зло
Смарти не может быть злом по определению - это всего навсего инструмент. Зло это процесс - то, каким образом используют тот или иной инструмент.
По аналогии: Эл. почта не может быть злом. Спам же этим самым злом является.

Вообще впечатление что тема поста направлена на то чтобы опустить шаблонизатор Smarty.
Наверное знаете поговорку: сытый голодного не поймет. Это я к тому, что на определенном этапе для программиста Smarty может покрывать все требования по разработке веб приложений. Все зависит от проекта и от поставленной задачи. Дальше, по мере роста, возможно придется изучать иные технологии.

На данном этапе Smarty вполне устраивает. Дальше будет видно.
Back to top
View user's profile Send private message
wolandino
Заглянувший



Joined: 05 Aug 2005
Posts: 16
Карма: 3
   поощрить/наказать


PostPosted: Tue Nov 07, 2006 2:34 pm (спустя 9 часов 52 минуты; написано за 1 минуту 14 секунд)
   Post subject:
Reply with quote

Смарти - не зло, а благо.
Говорить о преимуществах перед другими похожими инструментами можно до бесконечности.
Пока нет альтернативы, достойной Смарти, или же пока Smarty устраивает меня - буду использовать его.
Back to top
View user's profile Send private message
Rumata
Профессионал



Joined: 17 Aug 2003
Posts: 1850
Карма: 185
   поощрить/наказать


PostPosted: Mon Nov 20, 2006 4:26 pm (спустя 13 дней 1 час 52 минуты; написано за 1 минуту 36 секунд)
   Post subject:
Reply with quote

alexkad wrote:
Смарти не может быть злом по определению - это всего навсего инструмент. Зло это процесс
думаю не стоит заниматься дзеном не по теме
wolandino wrote:
Смарти - не зло, а благо
если сравнивать с другой системой, назовем ее - "очень известная российская система", то смарти действительно благо
Back to top
View user's profile Send private message
GodSon
Заглянувший



Joined: 07 Aug 2006
Posts: 10
Карма: -2
   поощрить/наказать

Location: Ukraine, Kharkov

PostPosted: Thu Sep 18, 2008 6:21 pm (спустя 1 год 9 месяцев 28 дней 1 час 55 минут; написано за 42 секунды)
   Post subject:
Reply with quote

А форум то тоже на смарти :)
Так форум зло или как?

Смарти рульная вещь (если уметь им ползоваться)
Back to top
View user's profile Send private message Send e-mail
Agat
Участник форума



Joined: 30 Jun 2006
Posts: 67
Карма: 3
   поощрить/наказать


PostPosted: Wed Apr 22, 2009 12:12 am (спустя 7 месяцев 3 дня 5 часов 50 минут; написано за 7 минут 30 секунд)
   Post subject:
Reply with quote

Смарти - зло или нет? У каждого своя правда, как и понимание зла и добра.

Например Вы перевели бабушку через дорогу. (это добро?)
А она упала в канализационный люк или в момент перевода вас (вместе с бабушкой) сбила машина.(а переходили вы по чесному на зеленый) (Теперь уже не кажется перевод бабушки через дорогу добром?)

Точно так же и со Смарти. Добра без Зла не бывает, точно так же как и зла без добра. Без + и - нет электричества, без дорба и зла нет жизни.

Смарти это некое аморфное тело, а вот наполнить его добром или злом это уже ваша задача.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Goto page Previous  1, 2
Page 2 of 2    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML