Mudanças entre as edições de "Usando enum com Symfony e Doctrine"
De Basef
(Criou página com 'O Symfony não suporta enums e o seguinte erro é gerado ao tentar executar um comando do doctrine pelo console do Symfony: <source src="bash"> [Doctrine\DBAL\DBALException]...') |
|||
(3 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
O Symfony não suporta enums e o seguinte erro é gerado ao tentar executar um comando do doctrine pelo console do Symfony: | O Symfony não suporta enums e o seguinte erro é gerado ao tentar executar um comando do doctrine pelo console do Symfony: | ||
− | <source | + | <source lang="bash"> |
[Doctrine\DBAL\DBALException] | [Doctrine\DBAL\DBALException] | ||
Unknown database type enum requested, Doctrine\DBAL\Platforms\MySqlPlatform may not support it. | Unknown database type enum requested, Doctrine\DBAL\Platforms\MySqlPlatform may not support it. | ||
Linha 9: | Linha 9: | ||
O mapeamento é feito no arquivo app/config/config.yml. Basta adicionar o seguinte dentro de doctrine.dbal: | O mapeamento é feito no arquivo app/config/config.yml. Basta adicionar o seguinte dentro de doctrine.dbal: | ||
− | + | <source lang="ini"> | |
− | + | mapping_types: | |
+ | enum: string | ||
+ | </source> | ||
Segue abaixo um exemplo de configuração completa da seção doctrine: | Segue abaixo um exemplo de configuração completa da seção doctrine: | ||
− | <source | + | <source lang="ini"> |
# Doctrine Configuration | # Doctrine Configuration | ||
doctrine: | doctrine: |
Edição atual tal como às 07h35min de 3 de maio de 2016
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: string
Segue 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