代码之家  ›  专栏  ›  技术社区  ›  Radu

Drupal视图中的自定义查询-现在无法排序

  •  0
  • Radu  · 技术社区  · 16 年前

    带有自定义查询的视图将显示在标题为“most downloaded”的右侧边栏中,此处: 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 回复  |  直到 16 年前
        1
  •  2
  •   googletorp    16 年前

    无法对视图进行排序,因为很难将SQL编码为始终相同。因此,当您通过表用视图更改SQL时,它将被您的 views_views_pre_execute 功能。