generate() public method

Generate the CRUD controller.
public generate ( Symfony\Component\HttpKernel\Bundle\BundleInterface $bundle, string $entity, Doctrine\ORM\Mapping\ClassMetadataInfo $metadata, string $format, string $routePrefix, array $needWriteActions )
$bundle Symfony\Component\HttpKernel\Bundle\BundleInterface A bundle object
$entity string The entity relative class name
$metadata Doctrine\ORM\Mapping\ClassMetadataInfo The entity class metadata
$format string The configuration format (xml, yaml, annotation)
$routePrefix string The route name prefix
$needWriteActions array Wether or not to generate write actions
 public function generate(BundleInterface $bundle, $entity, ClassMetadataInfo $metadata, $format, $routePrefix, $needWriteActions, $forceOverwrite)
 {
     parent::generate($bundle, $entity, $metadata, $format, $routePrefix, $needWriteActions, $forceOverwrite);
     try {
         $this->generateFormFilter($bundle, $entity, $metadata);
     } catch (\RuntimeException $e) {
         // form already exists
     }
     $dirFileConf = sprintf('%s/Resources/config/', $this->bundle->getPath());
     $this->generateConfAdminCrud($dirFileConf);
 }
 /**
  * @Route("/crud", name="_generator_crud")
  * @Template()
  */
 public function generateAction()
 {
     $request = $this->get('request');
     $crudEntity = new Crud();
     $form = $this->get('form.factory')->create(new GenerateCrudType(), $crudEntity);
     if ('POST' == $request->getMethod()) {
         $form->bindRequest($request);
         if ($form->isValid()) {
             $bundle = $this->get('kernel')->getBundle($crudEntity->bundle_name);
             $entityClass = $this->get('doctrine')->getEntityNamespace($crudEntity->bundle_name) . '\\' . $crudEntity->entity_name;
             $metadata = $this->getEntityMetadata($entityClass);
             $route_prefix = $this->getEntityMetadata($entityClass);
             $generator = new DoctrineCrudGenerator($this->get('filesystem'), $this->get('kernel')->locateResource('@SensioGeneratorBundle/Resources/skeleton/crud'));
             $generator->generate($bundle, $crudEntity->entity_name, $metadata[0], $crudEntity->format, $crudEntity->route_prefix, $crudEntity->with_write_action);
             $request->getSession()->setFlash('notice', sprintf("CRUD based on entity '%s' has been generated.", $crudEntity->entity_name));
             return new RedirectResponse($this->generateUrl('_generator'));
         }
     }
     return array('form' => $form->createView());
 }
Exemplo n.º 3
0
 public function generate(BundleInterface $bundle, $entity, ClassMetadataInfo $metadata, $format, $routePrefix, $needWriteActions, $forceOverwrite)
 {
     parent::generate($bundle, $entity, $metadata, $format, $routePrefix, $needWriteActions, $forceOverwrite);
     $this->generateFormFilter($bundle, $entity, $metadata, $forceOverwrite);
 }