2012-09-04 88 views
0

显示了哪些项目我已经使用这个类类型的一种形式:过滤收集在现场

class DespesasContainerType extends AbstractType 
{ 
    public function buildForm(FormBuilder $builder, array $options) 
    { 
     $builder 
      ->add('despesas', 'collection', array(
       'type' => new DespesasFamiliasType(), 
       'by_reference' => false, 
      )) 
     ; 
    } 

    // ... 
} 

这样,它显示了对象的属性despesas的所有项目。

有没有办法来过滤哪些项目使用?类似entity字段类型的query_builder选项。

回答

0

FormTypeInterface没有办法,但是可以在将它传递给Form之前对其进行过滤。

另一个棘手提示:

定义一个公共的getter像getFilteredDespeas对你的实体返回despeas过滤列表。在您的表格中,只需拨打filteredDespeas而不是despeas即可。这涉及到您专门管理表单绑定,通过向您的实体添加公共setFilteredDespeas或任何其他方式...