由于dotenv问题

时间:2018-01-26 12:55:33

标签: symfony symfony4 symfony-recipe

我一直在尝试将缓存/缓存包配方安装到我的symfony4 flex-configured项目中,但无济于事。我执行:

composer require cache/cache-bundle

这就是我在shell上得到的:

Capture of recipe cache-bundle install result on 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文件中布尔值问题的问题,但对于这个问题没什么结论,我很害怕。

1 个答案:

答案 0 :(得分:-2)

您是否试图摆脱“%env(bool:SESSION_CACHE_ENABLED)%”周围的报价?