Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Symfony 4 .env variables in controller

In Symfony 4, i try to pass parameter from my .env to a controller:

  • in .env:
###> First user creation variables ###
FIRST_USER_LOGIN=admintest
FIRST_USER_PASSWORD=azertyui
###< First user creation variables ###
  • in services.yaml:
parameters:
    locale: 'en'
    first.user:
        login: '%env(FIRST_USER_LOGIN)%'
        password: '%env(FIRST_USER_PASSWORD)%'
  • in my controller:
$utilisateur->setUsername($this->getParameter('first.user.login'))
    ->setPassword(
        $encoder->encodePassword(
            $utilisateur,
            $this->getParameter('first.user.password')
        )
    )
    ->setRoles(['ROLE_ADMIN']);
  • I don't know what I'm doing wrong but I've got this error message:
    The parameter "first.user.login" must be defined.
like image 406
Aelth Avatar asked Dec 12 '18 17:12

Aelth


1 Answers

Solved: just changed the services.yaml:

parameters:
    locale: 'en'
    first.user.login: '%env(FIRST_USER_LOGIN)%'
    first.user.password: '%env(FIRST_USER_PASSWORD)%'
like image 106
Aelth Avatar answered Sep 22 '22 12:09

Aelth