I have a form using this class type:
class DespesasContainerType extends AbstractType
{
public function buildForm(FormBuilder $builder, array $options)
{
$builder
->add('despesas', 'collection', array(
'type' => new DespesasFamiliasType(),
'by_reference' => false,
))
;
}
// ...
}
This way it shows all items in the despesas attribute of the object.
Is there a way to filter which items to use? Something similar to the query_builder option on the entity field type.
No way from FormTypeInterface, but you can filter this collection before passing it to the Form.
Another tricky tip :
Define a public getter like
getFilteredDespeason your Entity that returns the filtered list of despeas. In your Form, just call the fieldfilteredDespeasinstead ofdespeas. This involves that you specifically manage the form binding, by adding a publicsetFilteredDespeasto your entity, or any other way…