Symfony2 изменить группу проверки на основе значения поля - PullRequest
2 голосов
/ 27 сентября 2011

У меня есть действие контроллера, как это:

public function createAction()
{
    $entity  = new Client();

    $request = $this->getRequest();
    $form    = $this->createForm(new ClientType(), $entity);
    $form->bindRequest($request);

    if ($form->isValid()) {
        $em = $this->getDoctrine()->getEntityManager();
        $em->persist($entity);
        $em->flush();

        return $this->redirect($this->generateUrl('client_show', array('id' => $entity->getId())));

    }

    return array(
        'entity' => $entity,
        'form'   => $form->createView()
    );
}

Базовый Client Сущность имеет поле type, которое может принимать значения [0, 1] Теперь я определил 2 группы проверки для Client сущности: person и company.

Как изменить / выбрать группу проверки на основе введенного пользователем значения в поле type?

1 Ответ

0 голосов
/ 27 сентября 2011

Вы можете добавить ограничение проверки обратного вызова для вашего класса (сущность клиента) из документов :

Классы

Некоторые ограничения применяются ко всемукласс проверяется.Например, ограничение Callback является общим ограничением, которое применяется к самому классу.Когда этот класс проверяется, методы, указанные в этом ограничении, просто выполняются, так что каждый из них может предоставить больше пользовательских проверок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...