我有一个逻辑,当用户可能会看到表单值,但如果它是“签名”应该无法更改它。我想知道从控制器做到这一点的最佳方法是什么。现在,如果存在签名,所有元素都会遍历循环并获得“禁用”属性。我想知道我是否可以在表单创建上应用更优雅的方式。
这就是我所拥有的(并且“禁用”未以这种方式分配给字段集):
编辑1 - 添加表单创建
$form = $sl->get('FormElementManager')->get($formName);
$hydrator = new DoctrineHydrator($objectManager);
$form->setHydrator($hydrator);
if($isSigned)
{
$formElements = $form->getIterator();
foreach($formElements as $element )
{
$element->setAttribute('disabled', 'disabled');
}
}