2016-04-06 5 views
0

Doctrine 2でpartial object syntaxを使用すると、フィールドのエイリアスはありますか?Doctrine 2の部分オブジェクト構文+配列ハイドレーターを使用したフィールドのエイリアシング2

は、私はこれを行うことができます知っている:私は掘っ

$this->createQueryBuilder('team') 
    ->select('PARTIAL team.{id, name, dateCreated}, s, PARTIAL e.{id, name}') 
    ->innerJoin('team.session', 's') 
    ->innerJoin('s.event', 'e') 
    ->getQuery()->getArrayResult(); 

:私は、ネストされたリレーショナル階層構造で結果を取得するために、教義ために、部分オブジェクト構文を使用する必要が

$this->createQueryBuilder('user')->select([ 
    'user.id AS id', 
    'user.firstName AS first_name', 
    'user.lastName AS last_name', 
    'user.email AS email', 
    'user.dateCreated AS date_created' 
])->getQuery()->getArrayResult(); 

Doctrine\ORM\Internal\Hydration\ArrayHydratorの周りにはフックや何も見えず、DoctrineにはpostSelectというイベントがあるか、私自身の突然変異を実装することができるように見えません。

ありがとうございました!

答えて

0

あまり効率的ではありませんが、私はsubclassing the ArrayHydratorになり、キーを突然変更しました。

うまくいけば良い方法がありますが、これが誰かを助けることを望みます。

関連する問題