有没有一种方法可以检查控制器内是否存在表单字段?
我有一些提交按钮,但是根据对象中的数据,将显示和创建关联的按钮。
FormType.php
$builder->addEventListener(FormEvents::POST_SET_DATA, function (FormEvent $event) {
/** @var ObjectInfo $tab */
$tab = $event->getData();
$form = $event->getForm();
if (some condition) {
//No Value has been set or NULL
$form->add('submit_second', 'submit', array(
'label' => 'submit',
))
}
Run Code Online (Sandbox Code Playgroud)
controller.php
if ($overviewForm->get('submit_second')->isClicked()) {
// do something
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过
if (
!is_null($overviewForm->get('submit_second')) &&
$overviewForm->get('submit_second')->isClicked()
) {
Run Code Online (Sandbox Code Playgroud)
提交后我得到
错误
Child "submit_second" does not exist.
Run Code Online (Sandbox Code Playgroud)
如果$form->has('field')(建议@jahller)不起作用,则可以尝试将“ 某种条件 ” 的逻辑放入实体/模型的方法中,然后在需要时调用该方法。
您应该可以在FormType和中访问模型/实体Controller。
| 归档时间: |
|
| 查看次数: |
6269 次 |
| 最近记录: |