0
如何使用Silex FormServiceProvider
構建不使用樹枝的表單?使用無樹枝的Silex FormServiceProvider
我試過$form
和$form->createView()
,我也查看了Form和FormView的API文檔,這對我並不陌生,我該怎麼做。
這裏是我的代碼:
$app->get('/form', function (Request $request) use ($app) {
// some default data for when the form is displayed the first time
$data = array(
'name' => 'Your name',
'email' => 'Your email',
);
$form = $app['form.factory']->createBuilder(FormType::class, $data)
->add('name')
->add('email')
->add('billing_plan', ChoiceType::class, array(
'choices' => array(
1 => 'free',
2 => 'small_business',
3 => 'corporate'
),
'expanded' => true,
))
->getForm();
$form->handleRequest($request);
// I want return the form here
return 'ok';
});
爲了渲染一個表單,你需要一個[FormRenderer](https://github.com/symfony/symfony/blob/3.0/src/Symfony/symfony/blob/3.0/src/Symfony/Component/Form/FormRenderer.php)類的實例,依次使用[FormRendererEngine](https://github.com/symfony/symfony/blob/3.0/src/Symfony/Component/Form/FormRendererEngineInterface.php)。有一個[AbstractFormRendererEngine](https://github.com/symfony/symfony/blob/3.0/src/Symfony/Component/Form/AbstractRendererEngine.php),你可以嘗試工作,但我強烈建議你使用Twig ,你將擁有開箱即用的一切 – mTorres