Отключить форму symfony2
Я использую ту же форму для "предварительного просмотра" объекта, как и для "редактирования / обновления" того же объекта. В моем showAction()
для контроллера у меня есть следующий код:
$form = $this->createForm(new SalesEntityType($entity), $entity, array('read_only' => true) );
Этот код отлично работает для основной формы, но есть ряд подчиненных форм, которые включены в него путем включения. Один из примеров в show.html.twig:
{% include 'TargetCommonBundle:Hours:hoursForm.html.twig' with { form: hours } %}
К сожалению, настройка read_only в родительской форме, похоже, не связана с включенными подчиненными формами. Есть ли способ справиться с этим?
2 ответа
Решение
Пытаться:
$form = $this->createForm( new SalesEntityType($entity), $entity, [ 'disabled' => true ] );
Смотрите: vendor/symfony/symfony/src/Symfony/Component/Form/CHANGELOG.md, первая строка
// It is the way more fast to disabled a form
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->setDisabled(true);
}