我一直在尝试将缓存/缓存包配方安装到我的symfony4 flex-configured
项目中,但无济于事。我执行:
composer require cache/cache-bundle
这就是我在shell上得到的:
安装缓存包会在config/packages/cache.yml
下生成cache.yml文件,其默认内容为:
cache:
session:
enabled: "%env(bool:SESSION_CACHE_ENABLED)%"
service_id: "cache.provider.default"
use_tagging: true
ttl: 7200
router:
enabled: "%env(bool:ROUTER_CACHE_ENABLED)%"
service_id: "cache.provider.default"
ttl: 86400
logging:
enabled: "%env(bool:APP_DEBUG)%"
logger: "logger"
level: "info"
有问题的行是第一个"启用"一。出于某种原因,Symfony或作曲家不喜欢%env(bool:SESSION_CACHE_ENABLED)%
并返回该错误消息:
路径" cache.session.enabled"的类型无效。预期的布尔值,但是 得到了字符串。
SESSION_CACHE_ENABLED是作曲家在这样一个块中在项目的.env
文件中引入的值。
###> cache/cache-bundle ###
SESSION_CACHE_ENABLED=true
ROUTER_CACHE_ENABLED=false
###< cache/cache-bundle ###
然后,问题是如果其他人有&#34;遭受&#34;此问题,并找到一个修复或解决方法,使此配置工作。我的目标是在我的模拟项目中使用此依赖项来缓存内存中的数组,以将它们用作虚假的数据库系统。
我想打开一个关于此的问题,但由于我不确定这是Simfony问题还是仅仅是配方中的问题,我首先要问这里。
为了完成,这里是我项目中已有的当前依赖项列表。
"require": {
"php": "^7.1.3",
"easycorp/easy-log-handler": "^1.0",
"friendsofsymfony/rest-bundle": "^2.3",
"hermes/bridge/common": "dev-master",
"hermes/common": "dev-master",
"jms/serializer": "^1.10",
"jms/serializer-bundle": "^2.3",
"ramsey/uuid": "^3.7",
"sensio/framework-extra-bundle": "^5.1",
"symfony/cache": "^4.0",
"symfony/console": "^4.0",
"symfony/framework-bundle": "^4.0",
"symfony/http-foundation": "^4.0",
"symfony/monolog-bundle": "^3.1",
"symfony/stopwatch": "^4.0",
"symfony/web-server-bundle": "^4.0",
"symfony/yaml": "^4.0"
},
"require-dev": {
"symfony/flex": "^1.0",
"symfony/dotenv": "^4.0"
}
我已经看过有关dotenv文件中布尔值问题的问题,但对于这个问题没什么结论,我很害怕。
答案 0 :(得分:-2)
您是否试图摆脱“%env(bool:SESSION_CACHE_ENABLED)%”周围的报价?