我不确定按照您建议的方式进行操作是最好的主意。表单不应该像那样被配置绑定。
相反,也许您可以创建一个新的控制器来继承。
namespace Your\Bundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Your\Bundle\Form\Type\demoFormType;
class FormAwareController extends Controller
{
protected function createDemoForm( $demoObject )
{
$myVal = $this->container->getParameter( 'my_val' );
return $this->createForm( new demoFormType( $myVal, $demoObject ) );
}
}
然后,在你需要的地方扩展这个类
namespace Your\Bundle\Controller;
class SampleController extends FormAwareController
{
public function indexAction()
{
$demoObject = new stdClass; // or whatever
$form = $this->createDemoForm( $demoObject );
// etc...
}
}