Пользовательский запрос в представлениях Drupal - теперь не может сортировать - PullRequest
0 голосов
/ 05 июля 2010

Представление с пользовательским запросом отображается в правой боковой панели под названием «Наиболее загруженные» здесь: http://tf2huds.com. Представление с запросом, созданным представлениями, находится прямо под ним.

Чтобы вставить пользовательский запрос, я использую этот код в файле views.module:

<?php
function views_views_pre_execute(&$view) {
   if($view->name=="hud_downloads") {
     $view->build_info['query']="SELECT node.nid AS nid, 
         node.title AS node_title, 
         SUM(pubdlcnt.count) AS pubdlcnt_count 
         FROM node node 
         LEFT JOIN pubdlcnt pubdlcnt ON node.nid = pubdlcnt.nid  
         WHERE (node.type in ('huds')) AND (node.status <> 0) 
         GROUP BY node.nid ORDER BY pubdlcnt_count DESC";
     }
}
?>

Pastebins:

Есть идеи, почему я не могу отсортировать свое мнение? Заранее спасибо.

1 Ответ

2 голосов
/ 05 июля 2010

Вы не можете сортировать представление, потому что вы жестко программируете SQL, чтобы он всегда был одинаковым.Поэтому, когда вы изменяете SQL с помощью представлений через таблицу, он перезаписывается вашей views_views_pre_execute функцией.

...