Usando enum com Symfony e Doctrine
De Basef
O Symfony não suporta enums e o seguinte erro é gerado ao tentar executar um comando do doctrine pelo console do Symfony:
[Doctrine\DBAL\DBALException] Unknown database type enum requested, Doctrine\DBAL\Platforms\MySqlPlatform may not support it.
Para solucionar este problema é necessário mapear o tipo `enum` para `string`. O mapeamento é feito no arquivo app/config/config.yml. Basta adicionar o seguinte dentro de doctrine.dbal:
mapping_types:
enum: stringSegue abaixo um exemplo de configuração completa da seção doctrine:
# Doctrine Configuration
doctrine:
dbal:
driver: pdo_mysql
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
mapping_types:
enum: string
set: string
varbinary: string
tinyblob: text