public function load(ObjectManager $manager) { foreach ($this->fixtures as $file) { /** @var SplFileInfo $file */ $fixture = json_decode($file->getContents()); $project = new Project(); $project->setName($fixture->name); $project->setDescription($fixture->description); $project->setIdentifier($fixture->identifier); $project->setSlackWebhook($fixture->slackWebhook); $project->setOwner($this->getReference('user-' . $fixture->owner)); if (isset($fixture->users)) { foreach ($fixture->users as $userName) { /** @var User $user */ $user = $this->getReference('user-' . $userName); $project->addUser($user); } } $manager->persist($project); $this->addReference('project-' . $project->getIdentifier(), $project); } $manager->flush(); }