控制器中的Symfony 4 .env变量

时间:2018-12-12 17:13:56

标签: environment-variables symfony4

在Symfony 4中,我尝试从.env中传递参数 到控制器:

  • .env中:
###> First user creation variables ###
FIRST_USER_LOGIN=admintest
FIRST_USER_PASSWORD=azertyui
###< First user creation variables ###
  • services.yaml中:
parameters:
    locale: 'en'
    first.user:
        login: '%env(FIRST_USER_LOGIN)%'
        password: '%env(FIRST_USER_PASSWORD)%'
  • 在我的控制器中:
$utilisateur->setUsername($this->getParameter('first.user.login'))
    ->setPassword(
        $encoder->encodePassword(
            $utilisateur,
            $this->getParameter('first.user.password')
        )
    )
    ->setRoles(['ROLE_ADMIN']);
  • 我不知道自己在做什么错,但是我收到了以下错误消息:
    The parameter "first.user.login" must be defined.

1 个答案:

答案 0 :(得分:1)

解决了,我很傻,只需更改services.yaml

parameters:
    locale: 'en'
    first.user.login: '%env(FIRST_USER_LOGIN)%'
    first.user.password: '%env(FIRST_USER_PASSWORD)%'