public function ManyToOne::ensureMyTable

Same name in this branch
  1. 9.x drupal/core/modules/views/lib/Drupal/views/Plugin/views/argument/ManyToOne.php \Drupal\views\Plugin\views\argument\ManyToOne::ensureMyTable()
  2. 9.x drupal/core/modules/views/lib/Drupal/views/Plugin/views/filter/ManyToOne.php \Drupal\views\Plugin\views\filter\ManyToOne::ensureMyTable()

Override ensureMyTable so we can control how this joins in. The operator actually has influence over joining.

Overrides HandlerBase::ensureMyTable

File

drupal/core/modules/views/lib/Drupal/views/Plugin/views/filter/ManyToOne.php, line 120
Definition of Drupal\views\Plugin\views\filter\ManyToOne.

Class

ManyToOne
Complex filter to handle filtering for many to one relationships, such as terms (many terms per node) or roles (many roles per user).

Namespace

Drupal\views\Plugin\views\filter

Code

public function ensureMyTable() {

  // Defer to helper if the operator specifies it.
  $info = $this
    ->operators();
  if (isset($info[$this->operator]['ensure_my_table']) && $info[$this->operator]['ensure_my_table'] == 'helper') {
    return $this->helper
      ->ensureMyTable();
  }
  return parent::ensureMyTable();
}