$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();
我如何在 FormType 类中使用上述代码。我正在使用此查询为表单生成器中的选择类型生成数组。
最佳答案
我认为你应该使用 entity
键入而不是具有 query_builder
选项。
这个链接:
http://symfony.com/doc/current/reference/forms/types/entity.html
描述如何做到这一点。
如果由于某种原因你真的不想使用 entity
类型,你总是可以在 Controller 中检索数据并通过 FormType
传递它构造函数,这有点快'n'脏,但应该可以正常工作......
Controller :
$this->createForm(new MyFormType($results_from_qb), $form_data );
表格类型:
public function __construct($results_from_qb){
$this->results_from_qb = $results_from_qb; // store it into class member field to be used latter in buildForm method
}
关于symfony - 如何在symfony2的表单类型类中获取学说存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9714301/