Drupal在视图查询中添加新的连接表并删除旧表

时间:2014-09-15 12:23:36

标签: drupal drupal-7

在Drupal 7中,有什么办法可以在查询视图中改变连接表字段值

LEFT JOIN {draggableviews_structure} draggableviews_structure
    ON node.nid = draggableviews_structure.entity_id
        AND draggableviews_structure.view_name = 'homepage_views' 
        AND draggableviews_structure.view_display = 'panel_pane_12' 
        AND draggableviews_structure.args = '[\"1\"]'

从左边连接表的上方查询我想更改draggableviews_structure.args字段值'[\"1\"]'

1 个答案:

答案 0 :(得分:0)

我建议您实现Drupal hook hook_views_query_alter(),它允许您在执行之前更改查询。您可以查看此link以获取有关此挂钩的更多信息。

实际实现应如下所示:

<?php    
/**
     * Implements hook_views_query_alter().
     */
    function your_module_views_query_alter(&$view, &$query) {
      dpm($query->table_queue['draggableviews_structure']['join']);
    }
?>

dpm()应该打印您需要修改的查询的连接部分,并且应该允许您修改draggableviews_structure.args的值