ФорумПрограммированиеPHP для идиотов → Нативно-хуетивный шаблонизатор

Нативно-хуетивный шаблонизатор

  • Givi

    Сообщения: 2284 Репутация: N Группа: Адекваты

    Spritz 30 сентября 2010 г. 17:37, спустя 32 минуты 29 секунд

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

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 18:08, спустя 31 минуту 22 секунды


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

    Это нифига не извращение, это единственный правильный подход, потому что поведение - это всегда алгоритм, т.е. как раз то, что удобно писать на нашем любимом языке программирования. А шаблон - это представление, т.е. как раз то, что удобно писать средствами максимально близкими к HTML не морочась алгоритмом. Только всякие смарти для этого не подходят.

    Таким образом получаем три слоя: подготовщик данных -> контроллер -> шаблон.
    В простых случаях первые два можно совместить, но это дело вкуса.
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 18:19, спустя 11 минут

    Кто не верит, я могу показать пример шаблона с такой логикой, которая, что на смарти, что на нативе превращается в пиздец какое нечитаемое спагетти. Причем сама по себе верстка одна таблица из четырех ячеек, но надо хитро ее модифицировать в зависисости от текущей даты.
    Кто реализует красиво и читаемо для верстальщика - тому бутылку вискаря на пыхослете с меня, не реализует - ставит мне. Есть желающие?
  • vasa_c

    Сообщения: 3131 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 18:18, спустя 23 часа 58 минут 50 секунд

    Ну, шаблон это представление, каких-то данных.
    И вот, если эти исходные данные нужно представить в каком-то хитром виде, это чья задача?
    Спустя 43 сек.
    верит-неверит, показывай )
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 18:22, спустя 3 минуты 24 секунды

    Представлять в хитром виде - задача программиста. Он пишет каркас шаблона, верстальщик потом его разукрашивает.

    Показывай … Ну на бутылку вискаря забиваемся?
  • vasa_c

    Сообщения: 3131 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 18:30, спустя 8 минут 50 секунд

    да ну нафиг, там какая-нибудь подлянка )
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 18:33, спустя 2 минуты 7 секунд

    Никакой подлянки, профи обосрались, лано ща заскриншотю.
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 20:03, спустя 1 час 30 минут 35 секунд

    Пожалуйста.
    Фишка в том, что все движется по кругу, и при разных датах таблица формируется по разному.
    Иногда левая и правая колонка содержат одинаковое число дат.
    Иногда разрыв между началом и концом соревнования слева, иногда справа.
    Слабо все в один шаблон засунуть, да еще чтоб он был читаем?
    На Blitz - элементарно.

    Это эскиз. Там сыгранное и не сыгранное местами перепутано. Но принцип, думаю, понятен.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 20:03, спустя 23 часа 59 минут 46 секунд

    и на этом закончился диалог … никто не хочет бутылку вискаря проебать получить?
    Сапожник без сапог
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 20:12, спустя 8 минут 39 секунд

    Профи обосрались. ))))

    Кстати если кто предложит более наглядный принцип построения спортивного календаря тому с меня на пыхослете пиво. А то голову сломали, прежде чем это придумали.
  • vasa_c

    Сообщения: 3131 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 20:14, спустя 2 минуты 28 секунд

    Подожди, о чём спор?
    Вот есть данные, полученные от модели.
    Вот их надо как-то представить в зависимости от даты.
    Чья эта задача, контроллера или вьюхи?
    Имхо, контроллер должен только перекинуть эти данные между моделью и вьюхой, а последняя уже должна париться, как ей их покрасивее представить.

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

    А Blitz это круто, пришлось с ним работать, но тоже он не везде справляется столь элегантно.
    Да и все эти иттерируемости также не для мозга любого верстальщика.
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 20:19, спустя 5 минут 3 секунды

    я зайдя на пых с телефона в очереной раз понял что вьюха олжна много решать)
    Сапожник без сапог
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 20:31, спустя 11 минут 42 секунды


    Подожди, о чём спор?
    Вот есть данные, полученные от модели.
    Вот их надо как-то представить в зависимости от даты.
    Чья эта задача, контроллера или вьюхи?
    Имхо, контроллер должен только перекинуть эти данные между моделью и вьюхой, а последняя уже должна париться, как ей их покрасивее представить.
    Что есть вьюха? Скрипт на php, тогда в нем будет спагетти. Шаблон смарти - тоже самое, если вообще осилит эту задачу.
    Так что ИМХО контроллер должен рулить отображением, а в шаблоне только разметка.
    Если мы, конечно, под контроллером одно и тоже понимаем. Т.е. вьюхи как таковой у меня нет, но если нравится можно контроллер разделить на две части: подготовка данных и разруливание отображения. Но это все контроллер, а шаблон отдельно. В нем вообще нет логики, в нем только необходимая разметка.


    Но тут второй аспект: не всякий шаблонизатор на это способен и не каждый верстальщик это осилит.
    Поэтому я предложил вариант - во вьюхе сначала пыха, а потом уже шаблон.
    А Blitz это круто, пришлось с ним работать, но тоже он не везде справляется столь элегантно.
    Да и все эти иттерируемости также не для мозга любого верстальщика.
    Ну вот опять. Да не надо верстальщику эту осиливать. Я ему даю уже подговотвленный каркас (ща приатачу что я даю верстальщику), где все основные блоки есть. Дальше он заверстывает красивости. Справляется на ура - проверено.
  • vasa_c

    Сообщения: 3131 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 20:35, спустя 4 минуты 28 секунд

    Можно контроллер на две части разделить.
    Можно вьюху на две - приведение данных в нужный вид и шаблон.
    термины пошли…
    Спустя 66 сек.
    и почему за октябрь результаты уже известны, а за сентябрь ещё нет? :)
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 30 сентября 2010 г. 20:44, спустя 8 минут 17 секунд

    Я уже запутался о чем мы спорим. В общем я принцип обрисовал, каких-то конкретных возражений чем он плох не услышал. Чем плох натив я объяснил и пояснил примером.

    Зачем нужна предложенная в начале топика двуходовка я не понял. Т.е. понял, но ИМХО и без нее можно сделать нормальный шаблон, что и проилюстрировал.
    Спустя 118 сек.
    Blitz это круто, пришлось с ним работать, но тоже он не везде справляется столь элегантно.

    Кстати, а с чем не справляется? Я пока не сталкивался. Может просто не умели готовить?

Пожалуйста, авторизуйтесь, чтобы написать комментарий!