public function getTableName() : string { if (!$this->tableName) { $namespace = explode('\\', $this->getReflection()->getNamespaceName()); array_shift($namespace); $this->tableName = Nextras\Orm\StorageReflection\StringHelper::underscore(implode($namespace)); } return $this->tableName ?: parent::getTableName(); }