我想在我的 Symfony 包中使用 sql 函数 MD5,所以我在\MyCompany\MyBundle\DQL\MD5Function 中添加了文件( https://gist.github.com/Basster/2774738 )。
然后我改变了我的 config.yml 文件:
# app/config/config.yml
doctrine:
orm:
auto_generate_proxy_classes: "%kernel.debug%"
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
# Added configuration for MD5 function
entity_managers:
default:
dql:
string_functions:
MD5: MyCompany\MyBundle\DQL\MD5Function
但我有以下错误:
ArrayNode.php 第 309 行中的 InvalidConfigurationException:“doctrine.orm”下无法识别的选项“naming_strategy、auto_mapping”
最佳答案
您将一种实体管理器配置和多实体管理器配置混合在一起。
你应该使用:
# app/config/config.yml
doctrine:
orm:
auto_generate_proxy_classes: "%kernel.debug%"
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
# Added configuration for MD5 function
dql:
string_functions:
MD5: MyCompany\MyBundle\DQL\MD5Function
或者:
# app/config/config.yml
doctrine:
orm:
entity_managers:
default:
auto_generate_proxy_classes: "%kernel.debug%"
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
# Added configuration for MD5 function
dql:
string_functions:
MD5: MyCompany\MyBundle\DQL\MD5Function
关于Symfony + Doctrine + MD5 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31098578/