Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/02/2016, 15:41
alejandrov
 
Fecha de Ingreso: febrero-2016
Mensajes: 2
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: Formularios con datos relacionados

Hola a todos,

ya logre avanzar con el tema de las relaciones y ya despliega el formulario pero a la hora de guardar los datos no lo hace.

El codigo es el siguiente:

// GCA/TaskBundle/Form/CategoryType.php
namespace GCA\TaskBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;

class CategoryType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('tareas');
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'GCA\TaskBundle\Entity\Category',
)); }
}

// src/AppBundle/Form/Type/TaskType.php
namespace GCA\TaskBundle\Form;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\Form\Extension\Core\Type\SubmitT ype;
use Symfony\Component\OptionsResolver\OptionsResolver;
use GCA\TaskBundle\Form\CategoryType;

class TaskType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('task')
->add('dueDate', null)
->add('category', CategoryType::class)
->add('save', SubmitType::class);
;
}

public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults(array(
'data_class' => 'GCA\TaskBundle\Entity\Task',
));
}
}

class DefaultController extends Controller
{

public function newAction(Request $request)
{
// just setup a fresh $task object (remove the dummy data)
$task = new Task();
$form = $this->createFormBuilder($task);
$form = $this->createForm(TaskType::class, $task);
$form->handleRequest($request);

if ($form->isValid() && $form->isSubmitted()) {
$em = $this->getDoctrine()->getManager();
$em->persist($task);
$em->flush();
return $this->redirectToRoute('gca_task_homepage');
}

return $this->render('GCATaskBundle:Default:new.html.twig', array(
'form' => $form->createView(),
));
}


}


Agradezco la ayuda.