Yo intenté hacerlo, y di con la siguiente forma, espero que te pueda servir.
El primer paso es importar la clase AbstractFixture.
Código PHP:
Ver originaluse Doctrine\Common\DataFixtures\AbstractFixture;
Extiendes la clase del fixture:
Código PHP:
Ver originalclass LoadUsuariosAndAlimentos extends AbstractFixture {
Después, importas las librerías de tus entidades que formarían parte de la relación, por ejemplo alimentos y usuarios.
Después, haces un método para cargar usuarios, y a cada entidad de usuario, le asignas una referencia interna para el fixture:
Código PHP:
Ver originalpublic function loadUsuarios(ObjectManager $manager) {
$Entity = new Usuario();
$Entity->setName('Juan');
...
$manager->setReference('Juan', $Entity);
$manager->persist($Entity);
}
Como puedes ver creas una referencia interna para el manager que después usarás.
A continuación, el método de los alimentos:
Código PHP:
Ver originalpublic function loadAlimentos(ObjectManager $manager) {
$Entity = new Alimento();
...
$Entity->setUsuario($this->getReference('Juan'));
...
}
Y por último, en el método load, llamas a los dos métodos anteriores en el orden correcto:
Código PHP:
Ver originalpublic function load(ObjectManager $manager) {
$this->loadUsuarios($manager);
$this->loadAlimentos($manager);
}