31 авг. 2012 г.

Views group by по одному полю

В вьюсе для drupal 6 есть такой замечательный косяк, если добавляешь в хендлере

$this->query->add_groupby("node.nid");

то в group by добавляются все поля


чтобы все таки сделать группировку по нужным полям добавленным вручную
нужно сначала всем полям запретить добавляться в группировку:

//delete from group by all fields
       foreach($this->query->fields as $fieldname => $param){
         $this->query->fields[$fieldname]['aggregate'] = 1;  
       }
      
       $this->query->add_groupby("node.nid");


ps:
всавлял этот код в своем хендлере вроле работало,
еще можно вставить в hook_views_query_alter