1

これは私のコードです

public function buildForm(FormBuilder $builder, array $options , $task )
    {
        $builder
            ->add('genTasks','text',array('label'=>$task->getName()))

        ;
    }

buildForm 内の $task 変数にアクセスする方法はありますか

4

1 に答える 1

3

1 つの解決策:

public function buildForm(FormBuilder $builder, array $options)
{
    $task = $options['task'];

    // If you want...
    if(is_null($task)) throw new \LogicException('Task option is required.');

    $builder
        ->add('genTasks', 'text', array('label' => $task->getName()))
    ;
}

public function getDefaultOptions(array $options)
{
    return $options + array('task' => null);
}

フォームを作成するときにタスク オブジェクトをオプションとして渡します。

于 2012-08-06T06:20:41.390 に答える