На рассмотрении

+1

Подсказки для вывода значений объектов

Алекс Бодров Обновлен 6 лет назад в категории CMS Админ. панель 4

Уже в который раз приходится рыскать по папке modules в ORM файлах в поисках названия объекта для того, чтобы вывести его в теме оформления на фронте. Нельзя ли добавить эту информацию хотя бы к CSS селектору класса в панели управления? Например хочу я вывести картинку для мобильных - кликнул правой кнопкой по названию поля в админке - посмотрел код поля - а там в CSS классе прописаны его параметры. Так в Симпле было.
Или это можно сделать как-то более изящно и просто?

Комментарии 4

  • Артем Полторанин 6 лет назад

    Вы предлагаете очень не изящный способ получения информации об объектах, переданных в шаблон.
    Правильный способ: открыть сайт в режиме отладки, нажать на иконку "i" (Информация) в нужном блоке, откроется окно со всеми передаваемыми в шаблон переменными.

    Скрин:
    http://joxi.ru/KAxjbz3uMWGOXm

  • Алекс Бодров 6 лет назад

    Я это видел. А теперь скажите как мне вывести у категории "картинку для мобильных", основываясь на этой информации?

    • Артем Полторанин 6 лет назад

      Безусловно, эта информация позволит вам понять какие объекты переданы в шаблон. Так вы будете знать в какой объект надо заглянуть для более детальной информации.

      Информация по полям ORM объекта полностью представлена в методе _init.
      Или есть второй способ: {var_dump($object)} прямо в шаблоне. В свойстве values есть все загруженные поля.

      -----------------

      В _init вы находите нужно поле, смотрите его тип и соответственно понимаете, как его нужно выводить.
      Например, если это Type\Image, то {$object.__image->getUrl(x,y)}, а проверять на пустоту {if $object.image} {/if}

      Если это ORM объект, то у него можно либо вызвать метод, либо обратиться к значению свойства, либо обратиться к объекту свойства. (другого быть не может) Открыв класс в IDE, все методы можно видеть в удобных окошках.

      Вы также можете подглядывать в оригинальные шаблоны, чтобы понять как там выводятся различные поля.

  • Алекс Бодров 6 лет назад

    безусловно изящный способ. Спасибо за ответ. Буду дальше мудохаться.

Написать сообщение