Symfony2表单创建多次利用的自定义字段

WBOY
リリース: 2016-06-06 20:43:15
オリジナル
1096 人が閲覧しました

我在Me\MyBundle\Resources\config\routing.yml添加了以下路由:

<code>my_homepage:
    pattern:  /
    defaults: { _controller: MeMyBundle:Default:index }
</code>
ログイン後にコピー
ログイン後にコピー

Bundle controller

<code>namespace Me\MyBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class DefaultController extends Controller
{
    public function indexAction()
    {
        $form = $this->createFormBuilder()
            ->getForm()
        ;
        return $this->render('MeMyBundle::index.html.twig', array(
            'form'        => $form->createView(),
            'param1'      => 'some_string_1',
            'param2'      => 'another string',
        ));
   }
}
</code>
ログイン後にコピー
ログイン後にコピー

我想要在同一个form表单里创建可以重复利用的自定义的form字段,以下是利用代码

<code>public function indexAction()
    {
        $paramsArr_1 = array(
            'param1'      => 'some_string_1',
            'param2'      => 'another string',
        );
        $paramsArr_2 = array(
            'param1'      => 'some_string_2',
            'param2'      => 'another fine string',
        );
        $form = $this->createFormBuilder()
            ->add(myCustomField, $paramsArr_1)
            ->add(myCustomField_2, $paramsArr_2)
            ->getForm()
        ;
        return $this->render('MeMyBundle::index.html.twig', array(
            'form'        => $form->createView()
        ));
   }
</code>
ログイン後にコピー
ログイン後にコピー

参考了官方文档,但是还是不会,有谁知道吗?

回复内容:

我在Me\MyBundle\Resources\config\routing.yml添加了以下路由:

<code>my_homepage:
    pattern:  /
    defaults: { _controller: MeMyBundle:Default:index }
</code>
ログイン後にコピー
ログイン後にコピー

Bundle controller

<code>namespace Me\MyBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class DefaultController extends Controller
{
    public function indexAction()
    {
        $form = $this->createFormBuilder()
            ->getForm()
        ;
        return $this->render('MeMyBundle::index.html.twig', array(
            'form'        => $form->createView(),
            'param1'      => 'some_string_1',
            'param2'      => 'another string',
        ));
   }
}
</code>
ログイン後にコピー
ログイン後にコピー

我想要在同一个form表单里创建可以重复利用的自定义的form字段,以下是利用代码

<code>public function indexAction()
    {
        $paramsArr_1 = array(
            'param1'      => 'some_string_1',
            'param2'      => 'another string',
        );
        $paramsArr_2 = array(
            'param1'      => 'some_string_2',
            'param2'      => 'another fine string',
        );
        $form = $this->createFormBuilder()
            ->add(myCustomField, $paramsArr_1)
            ->add(myCustomField_2, $paramsArr_2)
            ->getForm()
        ;
        return $this->render('MeMyBundle::index.html.twig', array(
            'form'        => $form->createView()
        ));
   }
</code>
ログイン後にコピー
ログイン後にコピー

参考了官方文档,但是还是不会,有谁知道吗?

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート