2016-07-18 8 views
0

私はdoctrine配列型のrolesという名前のプロパティを持つuserテーブルを持っています。これは、データベース内のように見えます。 roles in user tableQueryBuilderとDoctrine Arrayの使い方は?

DoctrineクラスQueryBuilderを使用してクエリを作成しています。
は今、私のクエリは次のようになります。

$queryBuilder->select(array("u.id", "u.roles")) 
     ->from("CNDUserBundle:User", "u") 
     ->setMaxResults(10) 
    ; 

私は、特定の役割を持つすべてのユーザーのリストを取得する必要がありますが、私はDoctrineの配列型の内部で値をチェックする方法がわかりません。

+0

参照[この回答](http://stackoverflow.com/questions/9016914/fos-bundle-how-to-select-users-with-a-specific-roleのようなものを)と同様の質問 – geoB

+0

唯一の解決策は、LIKEステートメントを使用しているようです。私はDoctrineが配列型を使う方法を実装したと思っていました。ありがとうございました ! –

+1

INを使用すると、値が配列の値であるかどうかをチェックできます。 – abdiel

答えて

0
$queryBuilder->select(array("u.id", "u.roles")) 
    ->from("CNDUserBundle:User", "u") 
    ->where('u.role IN (:role)') 
    ->setParameter("role",array(1,2,3)) 
    ->setMaxResults(10) 
; 

その

関連する問題