diff --git a/src/ORM/DataObject.php b/src/ORM/DataObject.php index 0d0910aeb05..e67fc8201c5 100644 --- a/src/ORM/DataObject.php +++ b/src/ORM/DataObject.php @@ -1844,6 +1844,11 @@ public function getComponent($componentName) return $this->components[$componentName]; } + // The join object can be returned as a component, named for its alias + if (isset($this->record[$componentName]) && $this->record[$componentName] === $this->joinRecord) { + return $this->record[$componentName]; + } + $schema = static::getSchema(); if ($class = $schema->hasOneComponent(static::class, $componentName)) { $joinField = $componentName . 'ID';