Я пытаюсь добавить пользовательский класс типов для столбца enum в Doctrine, как в https://www.doctrine -project.org / projects / doctrine-orm / en / 2.6 / cookbook / mysql-enums.html # solution-2-defining-a-type Этот тип правильно распознается в моих схемах / аннотациях, однако он разрывается, если он фактически используется в базе данных.
Т.е., если столбец имеетдругого типа (например, после ALTER TABLE `reservation` CHANGE `city_tax_travel_reason` `city_tax_travel_reason` VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL;
), инструмент схемы работает:
user@srv3:~/portal/bin/app$ ./doctrine orm:schema-tool:update --dump-sql
The following SQL statements will be executed:
ALTER TABLE reservation CHANGE city_tax_travel_reason city_tax_travel_reason ENUM('business', 'leisure') NOT NULL COMMENT '(DC2Type:enumtravelreason)';
Если я сделаю это, следующий вызов вернет ужасную ошибку перечисления недопустимого типа, которую я пытаюсь устранить с помощью этого класса:
user@srv3:~/portal/bin/app$ ./doctrine orm:schema-tool:update --dump-sql --force
The following SQL statements will be executed:
ALTER TABLE reservation CHANGE city_tax_travel_reason city_tax_travel_reason ENUM('business', 'leisure') NOT NULL COMMENT '(DC2Type:enumtravelreason)';
Updating database schema...
1 query was executed
[OK] Database schema updated successfully!
user@srv3:~/portal/bin/app$ ./doctrine orm:schema-tool:update --dump-sql
In AbstractPlatform.php line 434:
Unknown database type enum requested, Doctrine\DBAL\Platforms\MySqlPlatform may not support it.
orm:schema-tool:update [--complete] [--dump-sql] [-f|--force]
user@srv3:~/portal/bin/app$
Я что-то упустил?