相关疑难解决方法(0)

将数据从控制器传递到类型symfony2

如果我在我的表单中显示"实体"类型的字段,并且我想根据从控制器传递的参数过滤此实体类型,我该怎么做...?

//PlumeOptionsType.php
public function buildForm(FormBuilder $builder, array $options)
{
    $builder->add('framePlume', 'entity', array(
        'class' => 'DessinPlumeBundle:PhysicalPlume',
        'query_builder' => function(EntityRepository $er) {
                                return $er->createQueryBuilder('pp')
                                    ->where("pp.profile = :profile")
                                    ->orderBy('pp.index', 'ASC')
                                    ->setParameter('profile', ????)
                                ;
                            },

    ));
}

public function getName()
{
    return 'plumeOptions';
}

public function getDefaultOptions(array $options)
{
    return array(
            'data_class'      => 'Dessin\PlumeBundle\Entity\PlumeOptions',
            'csrf_protection' => true,
            'csrf_field_name' => '_token',
            // a unique key to help generate the secret token
            'intention'       => 'plumeOptions_item',
    );
}
}
Run Code Online (Sandbox Code Playgroud)

在控制器内部,我创建表单:

i have that argument that i need …
Run Code Online (Sandbox Code Playgroud)

symfony

25
推荐指数
1
解决办法
3万
查看次数

如何在symfony2中的表单类型类中获取doctrine存储库?

$repository = $this->getDoctrine()->getRepository('ParabolaEntityBundle:ProjectAllocation');
        $query = $repository->createQueryBuilder('p')
                ->where('p.startDate < :sdate and p.employee = :emp and p.endDate > :edate')
                ->setParameter('sdate', date('Y-m-d', time()))
                ->setParameter('edate', date('Y-m-d', time()))
                ->setParameter('emp', $employee->getId())
                ->getQuery();
        $projectAllocate = $query->getResult();
Run Code Online (Sandbox Code Playgroud)

我如何在FormType类中使用上面的代码.我正在使用此查询为表单生成器中的选择类型生成数组.

formbuilder symfony

5
推荐指数
1
解决办法
1万
查看次数

我如何在formbuilder中传递一个变量?

我已找到更多关于此的答案,但返回错误"选项"prova"不存在"

我做到了这一点 defaultcontroller.php

$form = $this->createForm(new ProvinciaType(), $provincia, array('prova' => 'ciao'));
Run Code Online (Sandbox Code Playgroud)

ProvinciaType.php

public function buildForm(FormBuilder $builder, array $options)
    {
       $builder->add('name', 'entity', array(
    'class' => 'AcmeIndexBundle:Provincia',
    'query_builder' => function(EntityRepository $er) {
        return $er->createQueryBuilder('u')
            ->orderBy('u.name', 'ASC');
    },'empty_value' => $options['prova'] 
));

    }
Run Code Online (Sandbox Code Playgroud)

但为什么不工作?

php symfony

0
推荐指数
1
解决办法
1892
查看次数

标签 统计

symfony ×3

formbuilder ×1

php ×1