code: public function getRelation($name, $throwException = true)
      {
          $getter = $name;
          try {
              $relation = $this->$getter();
          } catch (\BadMethodCallException $e) {
              if ($throwException) {
                  throw new \InvalidArgumentException(get_class($this) . ' has no relation named "' . $name . '".', 0, $e);
              }
  
              return null;
          }
  
          if (!$relation instanceof BaseQuery) {
              if ($throwException) {
                  throw new \InvalidArgumentException(get_class($this) . ' has no relation named "' . $name . '".');
              }
  
              return null;
          }
  
          return $relation;
      }
docs: Получить запрос для релейшена по имени
  @param string $name - название релейшена, например `orders` для релейшена, определенного через метод getOrders()
  @param bool $throwException - кидать ли исключение в случае ошибки
  @return BaseQuery - запрос для подгрузки релейшена
  @throws \InvalidArgumentException