2013-04-17 49 views
0

我有一张我希望能够逐行编辑的数据表。最明智的做法是让每一行都有自己的形式。我可以在Symfony2 中做到这一点,而不是链接的父实体? documentation只显示如何与家长做。Symfony2 - 是否可以创建一个独立的窗体集合?

+0

您好,您不必使用'data_class'在所有你可以在数组上工作...但我不知道我是否正确...请告诉'链接父实体'是什么意思? – l3l0

+0

阅读我上面提供的链接。在那里,Task基本上是标签的父项。在我的情况下,我只想为每个标签提供一个表单 –

回答

1

你的控制器动作:

public function gridAction($criteria) { 
     $entities = $this->getDoctrine() 
     ->getManager() 
     ->getRepository('Bundle:Entity') 
     ->findbyCriteria($criteria); 
     // criteria presumably involves some gneration from routing 
     // and may not be a parameter at all 

     if (array() != $entities->toArray()) { 
      throw 
      $this->createNotFoundException('Unable to find any entities.'); 
     } 

     $forms = array_map(function($element) use ($this) { 
      return $this->createForm(new EntityType() 
       , $element 
       , array() // form parameters here 
       ); 
     }); 

     return $this->render('Bundle:Entity:grid.html.twig' 
      , array(
       'forms'   => $forms 
      )); 
    } 

而且你的枝杈:

<table class="records_list dataTable" id="CaseloadTable"> 
    <thead> 
     <tr> 
     </tr> 
    </thead> 
    <tbody> 
     {% for form in forms %} 
     <tr> 
      {{form_widget(form)}} 
     </tr> 
     {% endfor %} 
    </tbody> 
</table> 

然而,你可能得到更好的服务看这个: https://github.com/Abhoryo/APYDataGridBundle

相关问题