5
$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 クラスで上記のコードを使用するにはどうすればよいですか。このクエリを使用して、フォーム ビルダーで選択タイプの配列を生成しています。

4

1 に答える 1

6

entityオプションがある type を代わりに使用する必要があると思いquery_builderます。

このリンク:

http://symfony.com/doc/current/reference/forms/types/entity.html

その方法を説明します。

なんらかの理由で本当に型を使用したくない場合entityは、いつでもコントローラー内でデータを取得し、FormTypeコンストラクターを介して渡すことができます。

コントローラ:

$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
}
于 2012-03-15T08:07:35.907 に答える