Как внедрить сервис в фикстуры данных Symfony 2?

Как я могу внедрить службу в Symfony2 / Doctrine2 Data Fixture ? Я хочу создать фиктивных пользователей и мне нужна служба security.encoder_factory для кодирования моих паролей.

Я попытался определить свой Data Fixture как службу

myapp.loadDataFixture:
    class: myapp\SomeBundle\DataFixtures\ORM\LoadDataFixtures
    arguments:
        - '@security.encoder_factory'

Затем в моем Data Fixture

class LoadDataFixtures implements FixtureInterface {

    protected $passwordEncoder;

    public function __construct($encoderFactory) {
        $this->passwordEncoder = $encoderFactory->getEncoder(new User());
    }

    public function load($em) {

Но получил что-то вроде

Предупреждение: отсутствует аргумент 1 для ... \ DataFixtures \ ORM \ LoadDataFixtures :: __ construct (), вызываемый в ...

19
задан Jiew Meng 30 December 2011 в 03:25
поделиться