Решено:
Я переустанавливаю его заново, и теперь он содержит внутри web_profiler.yalm. Спасибо всем.
Первоначальный вопрос был:
Я только начинаю изучать Symfony, поэтому для начала я загрузил бесплатные видео на KnpUniversity. Когда я добрался до видео «Панель инструментов веб-отладки и профилировщик!» Я выполнил следующую команду:
> composer require profiler --dev
он установил ОК.
Затем, когда я открыл свое приложение в браузере, «(...) гладкая черная полоса внизу ...» не отображалась.
Я где-то читал, что, возможно, связано с тем, что я не установил symfony / debug, но посмотрите мой composer.json:
"require-dev": {
"sensiolabs/security-checker": "^4.1",
"symfony/debug": "^4.0",
"symfony/dotenv": "^4.0",
"symfony/profiler-pack": "^1.0",
"symfony/web-server-bundle": "^4.0"
},
так что я его установил.
Я выполнил следующую команду, которая дает мне конфигурацию профилировщика в моем проекте:
> php bin/console debug:config web_profiler
Current configuration for extension with alias "web_profiler"
=============================================================
web_profiler:
toolbar: false
intercept_redirects: false
excluded_ajax_paths: '^/((index|app(_[\w]+)?)\.php/)?_wdt'
Как вы видите выше, для панели инструментов установлено значение false, Как я могу его активировать? или Как я могу отобразить панель профилировщика?.
Я использую:
Заранее спасибо.
Решение:
Я создал новый проект, и он сработал, похоже, это ошибка, когда композитор загружал пакеты.
Внутри есть только файл с именем routing.yaml: framework: router: strict_requirements: true
Вам необходимо отправить полную html-страницу, чтобы отображалась панель профиля. Я подозреваю, что у вас просто есть простой ответ new Response ('Hello');
В файле: config / packages / dev / web_profiler.yaml изменить панель инструментов: false на панель инструментов: true
И не обращайте внимания на все комментарии о вашем конфиге. Если вы намеренно не вошли и не внесли изменения, конфигурация по умолчанию будет работать нормально.
@Cerad Я каким-то образом предположил, что мне это понадобится, и я сделал и расширил base.html.twig и вернул его
Вывод вашей отладки php bin / console: config web_profiler toolbar: false, что должно быть правдой
У меня нигде нет файла "web_profiler.yaml" @Jeroen
вы можете создать его в каталоге, о котором я упоминал, также проверьте, нет ли config web_profiler: в framework.yaml
composer require --dev symfony/profiler-pack. Это создаст всю необходимую конфигурацию, потому что он использует Symfony Flex. Я предполагаю, что Knp Videos немного устарели.
web_profiler отсутствует в framework.yaml
@Domagoj Я уже делал это три или четыре раза, также композитор требует --dev symfony / debug и ничего
Хм. Если у вас действительно вообще нет файла, значит, вы возились с конфигурацией или не загрузили его через композитор. Может быть, лучше просто начать чистый проект. Не сказать, что случилось.
Или попробуйте создать файл в config / packages / dev / web_profiler.yaml
@Nestor Команда, о которой я упоминал, немного отличается. Вы уверены, что использовали последнюю версию профилировщика? Команда, которую вы упомянули в вопросе, отличается от того, что указано в моем комментарии.
Если бы мне действительно приходилось предполагать, что видео, которое вы смотрели, предназначалось для Symfony 3, и вы пытались обновить его.
Еще одна идея, которая приходит в голову, - это окружающая среда. {{ dump(app.environment) }} Если это не dev, то панели отладки нет. Кроме того, если вы можете, проверьте расширение Chrome Symfony2 Profiler, которое работает с 3.4, не может подтвердить для Symfony 4.
@Cerad Я уверен, что они для Symfony4 [knpuniversity.com/screencast/symfony/resume] (следовать) эта ссылка), если хочешь.
@Domagoj то, что я имел в виду, было то, что я сделал: композитор требует --dev symfony / profiler-pack и композитор требует --dev symfony / debug
@Domagoj Я использую dev: php bin / console возвращает: Symfony 4.1.1 (ядро: src, env: dev, debug: true)
Если поставить toolbar: true и очистить кеш? Что происходит?
Опубликованные части composer.json предполагают, что произошли странные вещи. Они показывают 4.0, хотя вы, кажется, используете 4.1. Если вы действительно хотите разобраться в этом, создайте новый каталог и запустите "composer create-project symfony / website-skeleton". Это загрузит все, что вам нужно. А затем, если вы действительно хотите, вы можете сравнить свой проект с рабочим проектом, чтобы увидеть, что изменилось. В противном случае вы просто будете гоняться за своим хвостом.
@Cerad, я сделаю это снова, хотя это займет некоторое время из-за моей пропускной способности, когда он будет готов, я прокомментирую это здесь
Я тоже новичок. Сначала я подумал, что у тебя не получилось. После этого я знал, что «гладкая черная полоса внизу ...» отображается только на страницах, использующих Twig! что насчет тебя?






Я только что установил новый проект и могу подтвердить, что профилировщик и панель инструментов включены по умолчанию. Конфигурация находится в config/packages/dev/web_profiler.yaml со следующей конфигурацией:
web_profiler:
toolbar: true
intercept_redirects: false
framework:
profiler: { only_exceptions: false }
Вы запускали> composer create-project symfony / skeleton?
Нет. Я запускал symfony/website-skeleton. skeleton предназначен для API и микросервисов. Если вы сделали скелет, вероятно, вам не хватает пакета Twig и, возможно, чего-то еще
Можете ли вы отрендерить какие-либо представления в своем приложении?
Да, я могу отображать просмотры @Domagoj
вам нужно включить панель инструментов, как в моем web_profiler.yaml, очистить кеш, а затем попытаться отладить контейнер и профилировщик
вы можете создать его с конфигурацией, которую я опубликовал, очистить кеш и снова отладить контейнер
и вставьте вывод @Nestor
Ах, теперь, похоже, вам не хватает именованных маршрутов для профилировщика ... это очень странно, тот факт, что композитор не создал это для вас, когда вы установили пакет. Мой следующий совет состоит в том, что вы попытаетесь удалить все, что было при ваших недавних попытках установить пакет профилировщика, и сделайте это заново и попытайтесь увидеть, есть ли какие-либо сообщения об ошибках, или попытайтесь выяснить, почему symfony flex не создал все файлы для вас. Или вы можете попробовать создать новый скелет и попытаться установить его туда.
framework: profiler: { only_exceptions: false } мне эта деталь помогла. Спасибо!
Имейте в виду, что вам необходимо прикрепить маршруты web_profiler.
в:
config/routes/dev/web_profiler.yaml
web_profiler_wdt:
resource: '@WebProfilerBundle/Resources/config/routing/wdt.xml'
prefix: /_wdt
web_profiler_profiler:
resource: '@WebProfilerBundle/Resources/config/routing/profiler.xml'
prefix: /_profiler
Зайдите в свой каталог
config/packages/dev