ФорумПрограммированиеPHP для идиотов → Где вызывать декорировани, короче не знаю даже как тему назвать...

Где вызывать декорировани, короче не знаю даже как тему назвать...

  • master

    Сообщения: 3244 Репутация: N Группа: Джедаи

    Spritz Июнь 27, 2010, 12:49 п.п., спустя 5 минут 39 секунд

    kostyl, если делать декорирование в шаблоне, то он станет очень критичным к соблюдению типов и форматов переменных. т.е. если шаблон требует дату в формате YYYY-MM-DD - то нужно передавать ему именно такую, а если передашь "22 июня 2041г" - он или нотайс выбросит или вообще ничего. и отследить такую ошибку будет сложно. не нужно усложнять схему, самая простая работает лучше всего.
    не всё полезно, что в swap полезло
  • artoodetoo

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

    Spritz Июнь 27, 2010, 1:04 п.п., спустя 14 минут 43 секунды

    Не факт что только в шаблоне, главное чтобы добыча данных и вызов представления оставались без изменений. Это ООП.
    Что там внутри представления — зависит от вкуса и возможностей.
    Спустя 224 сек.
    master, "22 июня 2041г" это результат форматирования. вот нахуй бы оно всралось ДО передачи в представление?!!! Дата — это дата. Unix timestamp.
    Спустя 109 сек.
    Обожаю такие аргументы, "у меня тут говно, поэтому надо добавить говна еще и туда, чтобы одно говно не конфликтовало с другим". Мы к чистоте стремимся или как?
    ιιlllιlllι унц-унц
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz Июнь 27, 2010, 1:05 п.п., спустя 37 секунд

    master, то два варианта геттера не представления, а модели
  • master

    Сообщения: 3244 Репутация: N Группа: Джедаи

    Spritz Июнь 27, 2010, 1:16 п.п., спустя 11 минут 1 секунду

    kostyl, модели геттеры не нужны

    вообще сколько делал шаблонизаторы, фреймворки, фабрики и прочую поебень - сочетание "функция + шаблон" оптимально. в настройках роута указываешь action и template. преобразования выносишь в action, шаблон упрощается. изменение 90% затрагивает и функцию и шаблон, тут никуда не денешься
    не всё полезно, что в swap полезло
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz Июнь 27, 2010, 2:06 п.п., спустя 50 минут 16 секунд

    сам раньше делал escapeHtml и escapeJs в контроллере. Потом вроде Эдво, точно не помню, объяснил, что корректнее это делать в шаблоне. Далее я начал использовать Twig, а там ваще малина - есть автоэскейпинг.

    По поводу даты: я предлагаю не указывать явный формат даты, писать лишь только название стиля форматирования:
    вместо
    [: post.date_add|format('d.m.Y') :]
    писать в шаблоне
    [: post.date_add|format('forum.posts') :]

    А `|format` - это такой себе хелпер… Внутри него типа массива

    public function format($timestamp, $style)
    {
    if (isset($this->styles[$style])) {
    return date($this->styles[$style], $timestamp);

    $this->log->notice('Missing format "%s"', $style);
    return date($this->styles[$this->default], $timestamp);
    }


    так потом будет легче настраивать стиль вывода даты + он у каждого пользователя может быть свой
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz Июнь 27, 2010, 2:57 п.п., спустя 51 минуту 16 секунд

    Абырвалг, да, но как форматировать для json ответа?
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz Июнь 27, 2010, 3 п.п., спустя 3 минуты 10 секунд

    этот JSON для внутреннего использования или API?
  • kostyl

    Сообщения: 5210 Репутация: N Группа: Джедаи

    Spritz Июнь 27, 2010, 3:13 п.п., спустя 12 минут 24 секунды

    Абырвалг, типа зависит от ситуации ?.. Вообще давай, например, и для того и для того. Я просто хочу одним экшеном реализовать и внутреннее использование и апи и хуяпи )) тобишь захотел - отдал json ом заэскейпенные данные, захотел - чистые!
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz Июнь 27, 2010, 3:24 п.п., спустя 11 минут 46 секунд

    если для внутреннего, то можно прогонять через шаблон с эскейпингом и аштээмлом отдавать (itemsCount: 100500, text: '<div> … шаблон наш' ) :p

    если API - то тут я х3. Шаблона нет, экранировать негде)
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи
  • artoodetoo

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

    Spritz Сен. 28, 2010, 12:20 п.п., спустя 1 час 11 минут 32 секунды

    http://500px.com/photo/143946
    ιιlllιlllι унц-унц

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