Php “未确认期权”;映射“U类型”;通过多个连接
我试图将“enum”类型添加到我的symfony2 dbal连接中,但找不到方法Php “未确认期权”;映射“U类型”;通过多个连接,php,symfony,doctrine-orm,dbal,Php,Symfony,Doctrine Orm,Dbal,我试图将“enum”类型添加到我的symfony2 dbal连接中,但找不到方法 doctrine: dbal: mapping_types: enum: string default_connection: default connections: default: driver: "%database_driver%"
doctrine:
dbal:
mapping_types:
enum: string
default_connection: default
connections:
default:
driver: "%database_driver%"
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
connection2:
driver: "%database2_driver%"
host: "%database2_host%"
port: "%database2_port%"
dbname: "%database2_name%"
user: "%database2_user%"
password: "%database2_password%"
charset: LATIN1
这是我现在的配置,我得到了错误信息:
[Symfony\Component\Config\Definition\Exception\InvalidConfigurationException]
Unrecognized option "mapping_types" under "doctrine.dbal"
我还尝试将它放在connection2下面,并删除了默认的_连接,因为我找到了解决类似问题的答案。但是这些问题没有多个连接。根据完整参考,您必须在指定的连接元素下设置
映射类型
查看更多详细信息
希望此帮助映射类型必须位于具体连接下。所以您需要下一个配置:
doctrine:
dbal:
default_connection: default
connections:
default:
mapping_types:
enum: string
driver: "%database_driver%"
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
connection2:
mapping_types:
enum: string
driver: "%database2_driver%"
host: "%database2_host%"
port: "%database2_port%"
dbname: "%database2_name%"
user: "%database2_user%"
password: "%database2_password%"
charset: LATIN1
你是对的,但Symfony文档并不是这样描述条令配置的。看见该示例清楚地显示了doctrine.dbal本身中的映射类型。@JasonGabler,在提供的文档中,如果存在多个连接,则没有关于keymapping\u type
活动位置的信息。但您可以从连接中与其他键进行类比。键mapping\u类型
取决于连接
,其方式与驱动程序
或主机
相同,因此它们应该位于具体连接下的一个区块。您是对的,但Symfony文档并不是这样描述条令配置的。在您提供的Symfony文档的链接中,示例清楚地显示了doctor.dbal本身中的映射类型。