use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolverInterface; use Symfony\Component\Form\Extension\Core\Type\SubmitType; class TaskFilterType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('name', 'text', array( 'required' => false, 'label' => 'Name')) ->add('dueDate', 'date', array( 'required' => false, 'label' => 'Due Date')) ->add('save', SubmitType::class); } public function setDefaultOptions(OptionsResolverInterface $resolver) { $resolver->setDefaults(array( 'data_class' => 'AppBundle\Entity\TaskFilter', 'csrf_protection' => false, )); } public function getName() { return 'task_filter'; } }In this example, we define the form fields for a Task Filter. We add fields for name and due date, and also include a save button. We set the default options for the form, including the data class, and we give the form a name so that it can be referenced in our code. The package library used in this example is Symfony.