symfony2: comment utiliser group_concat dans QueryBuilder

Je vais avoir imbriquée-ensemble (en utilisant Gedmo arbre) entité appelée "Emplacement". L'entité "Appartement" a location_id et ce que je dois faire pour mettre en correspondance la valeur scalaire appelé par exemple "chemin d'accès" à la requête qui renvoie tous les appartements.

Dans Doctrine1, j'ai eu ce code:

/**
* Add "path" to each element
* 
* @param Doctrine_Query $query
* @param string $separator
*/
protected function addScalar_path(Doctrine_Query $query, $separator=", ")
{
    $subquery = "k99.root_id=o.root_id AND k99.lft<=o.lft AND k99.rgt>=o.rgt AND k99.level<=o.level" ;

    $query->addSelect("(SELECT GROUP_CONCAT(k99.name ORDER BY k99.level SEPARATOR '$separator') FROM Location k99 WHERE $subquery) AS path") ;
}

Remarque: "o" alias est utilisé pour la première question.
Ce code me permettrait d'utiliser

{foreach .... as $appartment}
   {$appartment->path}
...

Qui serait d'impression:

Australia, Victoria, Melbourne, ...other children...

Comment faire la même chose en D2? Et la façon même de la doctrine extenstions dans mon projet symfony2?

InformationsquelleAutor Zeljko | 2012-06-01