FIX Use correct constructors arguments

This commit is contained in:
Steve Boyd 2024-09-12 13:12:26 +12:00
parent 52e4574a9e
commit 4045443aea

View File

@ -5,6 +5,7 @@ namespace SilverStripe\ORM\FieldType;
use SilverStripe\Core\ClassInfo; use SilverStripe\Core\ClassInfo;
use SilverStripe\Core\Config\Config; use SilverStripe\Core\Config\Config;
use SilverStripe\ORM\DataObject; use SilverStripe\ORM\DataObject;
use RuntimeException;
trait DBClassNameTrait trait DBClassNameTrait
{ {
@ -36,7 +37,13 @@ trait DBClassNameTrait
public function __construct($name = null, $baseClass = null, $options = []) public function __construct($name = null, $baseClass = null, $options = [])
{ {
$this->setBaseClass($baseClass); $this->setBaseClass($baseClass);
if (is_a($this, DBVarchar::class)) {
parent::__construct($name, 255, $options);
} elseif (is_a($this, DBEnum::class)) {
parent::__construct($name, null, null, $options); parent::__construct($name, null, null, $options);
} else {
throw new RuntimeException('DBClassNameTrait can only be used with DBVarchar or DBEnum');
}
} }
/** /**