Когда я работал над старым проектом (Symfony 3.2), {{ dump(var) }} в шаблонах веточек отображался нормально (со стилем и возможностями разворачивания / сворачивания). Но в моем недавнем проекте (Symfony 4) функция dump в twig отображает только текст.
Я просмотрел документы, проблемы с GitHub как для Symfony, так и для Twig, а также для SO без каких-либо успехов.
Документы:
Что-то изменилось, чего я не заметил?
Редактировать: Я получил желаемый результат, используя dump() в PHP (получил цвет синтаксиса и свернуть / развернуть), но я до сих пор не понимаю, почему он не работает для ветки, как в более старой версии Symfony. Я, должно быть, что-то упускаю ...
@DarkBee, он находится в той же среде (локально). Отличается только создание проектов.
При поиске документации Twig говорится, что вам не нужно добавлять тег <pre>, если вы активировали xdebug. Фактически, простое использование {{ dump() }} создает тег <pre> сам по себе (так что вы получаете читаемые строки вместо одного большого блока), так что я думаю, это нормально для xdebug?
какие-нибудь консольные ошибки?
@goto Нет, ни одной строчки.
Включен ли компонент symfony / var-dumper?
@candybeer Глядя на банкомат, я вижу, что пакет указан в разделе композитора conflict.
@candybeer Не могли бы вы добавить свой комментарий в качестве ответа, чтобы я мог наградить вас наградой? Спасибо.






Спасибо @candybeer за то, что направили меня в путь.
Просто добавьте в проект пакет debug-pack (в который входит symfony\debug-bundle):
composer require debug --dev
Или же
Просто добавьте debug-bundle, который требуется, как сказано в других комментариях к вопросу SO:
composer require symfony/debug-bundle
Найдено в этом вопросе SO: Symfony 4: Вар-дампер не работает должным образом:
dump() не работал в ветке и выдавал ошибку, но в ответе было сказано также установить пакет отладки, что заставило его работать для OP. Попробовав сам, теперь я могу делать дамп через ветку в стандартном стиле и с возможностью сворачивать / разворачивать узлы.
Как сказано в комментариях (и в документация по var-dumper), пакет var-dumper требует, чтобы пакет debug-bundle работал в symfony.
Еще раз огромное спасибо @candybeer!
Та же проблема, и установка symfony/debug-bundle решила ее.
Как указано в документе, компонент должен быть установлен перед его использованием:
Док: https://symfony.com/doc/current/components/debug.html
Командование:
composer require symfony/debug
Вы должны проверить, хорошо ли он включен ..
Странно ... Просто попробовал ваше решение в другом проекте, но проблема не решилась ... попробовала команду composer require debug --dev, и она сработала. Я посмотрел, и debug - это debug-pack, который включает в себя много других компонентов, таких как symfony/debug-bundle, symfony/profiler-pack и symfony\var-dumper. Github - пакет отладки
Возможно, вы работаете и на другом сервере, на котором не установлен xdebug?