2014-03-07 19 views
0

我有一個實體「組」,有一個名稱和一個描述。 我創建了一個更新的表單,但是當我點擊提交時,值設置爲NULL我的實體不更新拋出表格

我也嘗試創建一個新的實體。但在這種情況下,它們的值在該字段中設置爲默認值。

這裏是我的代碼:

我的表格:

<form method="post" class="form-signin" {{ form_enctype(form) }}> 
    <input id="name" name="form[name]" required="required" value="{{ group.name }}"></input> 
    <textarea id="description" name="form[description]" >{{ group.description }}</textarea> 
    <input class="btn btn-lg btn-primary btn-block" type="submit" id="_submit" name="_submit" value="submit" /> 
    </form> 

我的控制器:

public function updateParametersAction() 
    { 
    $user = $this->get('security.context')->getToken()->getUser(); 

    $repository = $this->getDoctrine() 
        ->getManager() 
        ->getRepository('MyBundle:Groups'); 

    $group = $repository->findOneByIdUser($user->getId()); 

    $form = $this->createFormBuilder($group) 
       ->add('name',  'text') 
       ->add('description', 'textarea') 
       ->getForm(); 

    $request = $this->get('request'); 

    if ($request->getMethod() == 'POST') {  
     $em = $this->getDoctrine()->getManager(); 
     $em->persist($group); 
     $em->flush(); 
    } 

    return $this->render('MyBundle:Client:updateParameters.html.twig', array(
     'group' => $group, 
     'form' => $form->createView() 
    )); 
    } 

有什麼不對?

回答

0

你要綁定到窗體的請求:

// (...) 

$form = $this->createFormBuilder($group) 
      ->add('name',  'text') 
      ->add('description', 'textarea') 
      ->getForm(); 

$form->handleRequest($request); 

// (...)