【发布时间】:2014-05-18 19:53:34
【问题描述】:
我试图弄清楚如何在通过 FormBuilder 创建的 Symfony2 表单上设置类(或任何属性)。我知道您可以通过表单本身的模板执行此操作,但我仍然想知道如何通过控制器中的$this->createFormBuilder() 执行此操作。
我的代码如下。正如您在我的代码中看到的那样,我已经尝试过 setAttribute() 方法,但它没有效果。我最初以为我搞砸了,因为我覆盖了默认的 twig form_div_layout.html.twig 文件,但事实并非如此。
private function createResolvedForm($id) {
return $this->createFormBuilder()
->setAction($this->generateUrl('system_announcement_resolve', array('id' => $id)))
->setMethod('PUT')
->setAttribute('class', 'resolved-form exempt-from-default-ajax')
->add('submit', 'submit', array(
'label' => 'Mark As Resolved',
'attr' => array(
'class' => 'btn btn-success btn-xs',
'data-toggle' => 'tooltip',
'data-placement' => 'top',
'title' => 'Resolve Issue #' . $id,
)
))
->getForm();
}
需要明确的是,在我传入的提交按钮上设置类没有问题,而是实际表单本身。
感谢您的帮助!
【问题讨论】: