3

フォーム クラスを作成する必要があります。http://symfony.com/doc/current/book/forms.htmlの symfony book に従っています。

src/Acme/TaskBundle/Form/Type/TaskType.php でフォームを作成しようとしていますが、プロジェクトのフォルダー構造を見ると、"Form" フォルダーがありません。

Form フォルダーを手動で src/Acme/TaskBundle/ に作成しようとすると、Form フォルダーと TaskType.php ファイル (名前空間 Acme\TaskBundle\Form\Type Expected:Identifier) でエラーが発生します。

Form フォルダを自動的に作成する方法はありますか? または、手動で作成するにはどうすればよいですか?

4

3 に答える 3

4

フォルダーは単なる慣例です。Formフォームは好きな場所に置くことができます。この規則は次のように拡張されます。

  • Form\Typeフォームタイプの場合、
  • Form\Modelフォーム モデルの場合、
  • Form\Handlerフォームハンドラーの場合、
于 2012-09-10T07:08:03.237 に答える
1

コマンドを試しましたか、あなたが探しているものかもしれません

php app/console generate:doctrine:form 
于 2012-09-10T22:28:30.080 に答える
0

手動で作成しただけです。フォーム: (私の場合: LL\NameBundle\Form)

フォーム名.php

<?php

namespace LL\NameBundle\Form;

use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\FormBuilder;

class FormName extends AbstractType
{
    public function buildForm(FormBuilder $builder, array $options)
    {
        $builder
            ->add('add')
            ->add('your')
            ->add('fields')
        ;
    }

    public function getName()
    {
        return 'form-name';
    }
}

コントローラ:

use LL\NameBundle\Form\FormName;

public function()
{
    $form = new FormName();
    $form = $this->form( $form, $entity );

    return array(
       'form' => $form->createView()
    );
}

これは私にとってはうまくいきます。うまくいかない場合は、コードを投稿してください。

于 2012-09-19T06:45:06.893 に答える