【发布时间】:2016-08-22 16:13:27
【问题描述】:
在 Symfony2.7 中,我能够在创建表单时直接从控制器将参数传递给 Form Type 构造函数,但是在 Symfony3 中我无法做到!
在 Symfony2.7 之前
$postedBy = $this->getUser()->getFullname();
$form = $this->createForm(new NewsType($postedBy));
在 Symfony3 之后
$form = $this->createForm(NewsType::class); // no idea how to pass parameter?
更新: 我还想通过以下方式访问它:
$builder->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event) {
// how to access posted_by_name here which is sent from controller
}
任何帮助将不胜感激..
【问题讨论】:
-
感谢您的帮助,我自己解决了,请检查我的答案..
-
@jonathan - 对该问题的回答并不能完全回答我的问题!正如我的回答中更新的那样,我还需要在表单事件侦听器中传递参数..
标签: symfony-forms symfony