react-logo/backend/src/DataFixtures/UserFixtures.php

56 lines
1.4 KiB
PHP

<?php
namespace App\DataFixtures;
use App\Entity\User;
use Doctrine\Bundle\FixturesBundle\Fixture;
use Doctrine\Common\Persistence\ObjectManager;
use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface;
class UserFixtures extends Fixture
{
private $passwordEncoder;
public function __construct(UserPasswordEncoderInterface $passwordEncoder)
{
$this->passwordEncoder = $passwordEncoder;
}
public function load(ObjectManager $manager)
{
// On créait l'utilisateur client1 et client2
$client1 = new User();
$client1->setUsername('client1');
$client1->setPassword($this->passwordEncoder->encodePassword(
$client1,
'client1'
));
$client1->setRoles(['ROLE_CLIENT']);
$manager->persist($client1);
$client2 = new User();
$client2->setUsername('client2');
$client2->setPassword($this->passwordEncoder->encodePassword(
$client2,
'client2'
));
$client2->setRoles(['ROLE_CLIENT']);
$manager->persist($client2);
// On créait l'utilisateur dev1
$dev1 = new User();
$dev1->setUsername('dev1');
$dev1->setPassword($this->passwordEncoder->encodePassword(
$dev1,
'dev1'
));
$dev1->setRoles(['ROLE_DEVELOPER']);
$manager->persist($dev1);
$manager->flush();
}
}