0

I use alice-bundle and have some fixtures

AppBundle\Entity\Admin:
admin{1..3}:
    username: admin<current()>
    firstName: <firstName('male')>
    lastName: <lastName()>
    password: <encodePassword(@self, @self->username)>

In old version I create FixtureLoader class extends from DataFixtureLoader and just create public function encodePassword for my custom faker, very simple I guess

use Hautelook\AliceBundle\Alice\DataFixtureLoader;
use Symfony\Component\Security\Core\User\UserInterface;
class FixtureLoader extends DataFixtureLoader
{
/**
 * {@inheritDoc}
 */
protected function getFixtures()
{
    $prefix = __DIR__ . '/../Fixture/';
    return [
        $prefix . 'admin.yml',
        $prefix . 'city.yml',
        $prefix . 'country.yml',
        $prefix . 'location.yml',
        $prefix . 'user.yml',
        $prefix . 'voteSetting.yml',            
        $prefix . 'project.yml'
    ];
}

/**
 * @param UserInterface $user
 * @param $plainPassword
 * @return string
 */
public function encodePassword(UserInterface $user, $plainPassword)
{
    return $this->container->get('security.password_encoder')->encodePassword($user, $plainPassword);
}
}

But atm, when I install bundle I surprised, DataFixtureLoader not found, I guess deprecated. And my question, how to create my custom faker ?

shuba.ivan
  • 3,824
  • 8
  • 49
  • 121

1 Answers1

0

U sue "hautelook/alice-bundle": "^1.3.1" and extend from abstract class

use Hautelook\AliceBundle\Doctrine\DataFixtures\AbstractLoader;
use Nelmio\Alice\Fixtures;
use Symfony\Component\Security\Core\User\UserInterface;

class FixtureLoader extends AbstractLoader
{
/**
 * {@inheritdoc}
 */
public function getFixtures()
{
    return [
        __DIR__.'/../Fixtures/admin.yml',
    ];
}

/**
 * @param UserInterface $user
 * @param $plainPassword
 *
 * @return string
 */
public function encodePassword(UserInterface $user, $plainPassword)
{
    return $this->container->get('security.password_encoder')->encodePassword($user, $plainPassword);
}
shuba.ivan
  • 3,824
  • 8
  • 49
  • 121