/** * Create service * * @param ServiceLocatorInterface $serviceLocator * @return mixed */ public function createService(ServiceLocatorInterface $serviceLocator) { /** * @var \Doctrine\ORM\EntityManager $entityManager */ $entityManager = $serviceLocator->get('Doctrine\\ORM\\EntityManager'); $formManager = $serviceLocator->get('FormElementManager'); /** * @var UserFieldset $fieldset */ $fieldset = $formManager->get('User\\Form\\UserFieldset'); $form = new UserForm(); $hydrator = new DoctrineHydrator($entityManager, '\\User\\Entity\\User'); $fieldset->setUseAsBaseFieldset(true)->setHydrator($hydrator)->setObject(new User()); $form->add($fieldset)->setInputFilter(new InputFilter())->setHydrator($hydrator); return $form; }