как изменить запрос и объединиться с другой таблицей в представлениях 3.0 drupal 7.x? - PullRequest
1 голос
/ 09 января 2012

Я хочу изменить представление и объединить его с таблицей taxonomy_index, но кажется, что этот код не работает

function MY_MODULE_views_query_alter(&$view, &$query) {
$view->query->add_relationship('my_join', new views_join('taxonomy_index', 'nid', 'node', 'nid','INNER'), 'taxonomy_index');
$view->query->add_where('country_price', "my_join.tid IN ", '2,3');
}

как мне объединить запрос этого представления с таблицей taxonomy_index?

1 Ответ

1 голос
/ 09 мая 2012

У меня была похожая проблема, и я смог использовать hook_query_alter вместо hook_views_query_alter.Я сделал это только с помощью Equals в предложении where, но я предполагаю, что 'IN' будет работать так же.

function MY_MODULE_query_alter(QueryAlterableInterface $query) {
  if ($query->hasAllTags('views', '[MY VIEW NAME]')) {
    $query->addJoin('INNER', 'taxonomy_index', 'ti', 'node.nid = ti.nid');
    $query->condition('ti.tid', '2,3', 'IN');
  }
}
...