$entityManager->flush()
, т.о. невалидная сущность сохранится. Плюс, очень часто бывает, что сущность не маппится один в один на форму и тогда начинаются танцы с бубном, приходится создавать какие-то поля, которые для самой сущности не имеют никакого значения, а нужны только для UI if ($form->isSubmitted() && $form->isValid()) {
$entityManager->flush();
return $this->redirectToRoute('index');
} else {
// Тут сущность находится в невалидном состоянии и если, случайно вызывать (может в каком-нибудь листенере)
// $entityManager->flush(); то оно сохранится в БД
}
$dto = $mapper->toDto($entity);
$form = $this->createForm($dto);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$entity = $mapper->toEntity($dto, $entity);
$entityManger->flush();
}