private function loadShips(ObjectManager $manager, Faction $faction) { for ($i = 0; $i < 1000; ++$i) { $ship = new Ship(); $ship->setId(9 + $i); $ship->setName('Fake ship ' . $i); $faction->addShip($ship); $manager->persist($faction); $manager->persist($ship); $metadata = $manager->getClassMetaData(get_class($ship)); $metadata->setIdGeneratorType(ClassMetadata::GENERATOR_TYPE_NONE); $manager->flush(); } }
public function createShip($shipName, $factionId) { $em = $this->container->get('doctrine.orm.default_entity_manager'); $faction = $em->find('AppBundle:Faction', $factionId); if (!$faction instanceof Faction) { throw new UserError(sprintf('Unknown faction with id "%d"', $factionId)); } $ship = new Ship(); $ship->setName($shipName); $ship->addFaction($faction); $em->persist($ship); $em->persist($faction); try { $em->flush(); } catch (\Exception $e) { throw new UserError(sprintf('Could not save ship with name "%s". Retry later', $shipName)); } return ['ship' => $ship, 'faction' => $faction]; }