Ho bisogno di implementare un operatore OR tra alcuni filtri in una vista Drupal. Per impostazione predefinita, Drupal mostra tutti i filtri insieme.Operatore OR in Drupal View Filters
Utilizzando
hook_views_query_alter(&$view, &$query)
posso accedere alla query (var $ query), e posso cambiare o:
$query->where[0]['type']
a 'O', o
$query->group_operator
a "OR"
Il problema è tuttavia, che non ho bisogno di OR ovunque. Ho provato a modificarli entrambi in OR separatamente e non produce il risultato desiderato.
Sembra modificare questi valori, inserisce OR ovunque, mentre ho bisogno di => (filtro 1 AND filtro 2) O (filtro 3), quindi solo 1 OR.
ho potuto solo controllare la query della vista, copiarlo, modificarlo, e gestito attraverso db_query, ma questo è solo sporca ..
Qualche suggerimento?
Thx in anticipo.
Come secondo a questo, c'è anche l'uso della query alter per la vista - ho intenzione di provare questa rotta. http://www.brianfending.com/content/better-wheres-your-drupal-forums-hookviewsqueryalter – cgp
La query alter è ciò che @Vodde si riferisce a 'dirty', stiamo cercando di modificare le clausole della query tramite una vista Chiamata API –
Sarebbe bello specificare le versioni Drupal e Views. –