我如何通过symfony形式的builForm函数传递额外的变量 [英] How can i pass extra variable in symfony form builForm Function

查看:107
本文介绍了我如何通过symfony形式的builForm函数传递额外的变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的代码

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

;
}

有没有什么办法可以访问buildForm中的$ task变量

解决方案

一个解决方案:

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

//如果你想...
if(is_null($ task))抛出new \LogicException('Task option is required。');

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


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

创建表单时传递任务对象作为选项。


THis my code

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

        ;
    }

Is there any way i can access the $task variable inside buildForm

解决方案

One solution:

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);
}

And pass your task object as option when you create your form.

这篇关于我如何通过symfony形式的builForm函数传递额外的变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆