public function HandlerBase::setRelationship in Drupal 9
Same name and namespace in other branches
- 8 core/modules/views/src/Plugin/views/HandlerBase.php \Drupal\views\Plugin\views\HandlerBase::setRelationship()
Called just prior to query(), this lets a handler set up any relationship it needs.
Overrides ViewsHandlerInterface::setRelationship
File
- core/
modules/ views/ src/ Plugin/ views/ HandlerBase.php, line 506
Class
- HandlerBase
- Base class for Views handler plugins.
Namespace
Drupal\views\Plugin\viewsCode
public function setRelationship() {
// Ensure this gets set to something.
$this->relationship = NULL;
// Don't process non-existent relationships.
if (empty($this->options['relationship']) || $this->options['relationship'] == 'none') {
return;
}
$relationship = $this->options['relationship'];
// Ignore missing/broken relationships.
if (empty($this->view->relationship[$relationship])) {
return;
}
// Check to see if the relationship has already processed. If not, then we
// cannot process it.
if (empty($this->view->relationship[$relationship]->alias)) {
return;
}
// Finally!
$this->relationship = $this->view->relationship[$relationship]->alias;
}