我正在使用Flex测试Symfony。我有一个非常小的应用程序,工作正常(幸运数字生成器)。我想通过Flex添加web_profiler。
我启动此命令:
composer require web_profiler --dev
它工作正常,缓存成功预热。但是当我检查我的主页时,发生了错误:“_wdt”路线不存在。
我检查了新的config/routes/dev/web_profiler.yaml
文件。它是由Flex创建的。它包含:
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/routes.yaml
。错误消失了。我明白我的config/routes/dev
子目录中的yaml文件未加载。
为什么/config/routes/dev subdirectory
中的文件未加载?我忘了加载dev配置文件的哪一步?
这是我的.env
文件:
# This file is a "template" of which env vars needs to be defined in your configuration or in an .env file
# Set variables here that may be different on each deployment target of the app, e.g. development, staging, production.
# https://symfony.com/doc/current/best_practices/configuration.html#infrastructure-related-configuration
###> symfony/framework-bundle ###
APP_ENV=dev
APP_DEBUG=1
APP_SECRET=80b8077a9ccaaf2b5dd3427b512bae42
###< symfony/framework-bundle ###
这是我的config/routes.yaml
文件
index:
path: /
defaults: { _controller: 'App\Controller\GeneratorController::numberAction' }
# Depends on sensio/framework-extra-bundle, doctrine/annotations, and doctrine/cache
# install with composer req sensio/framework-extra-bundle annot
controllers:
resource: ../src/Controller/
type: annotation
答案 0 :(得分:0)
缓存已经成功预热,但这还不够。为了工作,我也必须清除缓存。
在我的composer.json中,我为post更新命令添加了一行:
"scripts": {
"auto-scripts": {
"assets:install --symlink --relative %PUBLIC_DIR%": "symfony-cmd",
"security:check": "symfony-cmd",
"cache:clear --no-warmup": "symfony-cmd",
"cache:warmup": "symfony-cmd"
},
"post-install-cmd": [
"@auto-scripts"
],
"post-update-cmd": [
"@auto-scripts"
]
},
添加的行是这一行:"cache:clear --no-warmup": "symfony-cmd"
安装应用程序时不需要此行,但在更新期间需要此行。