生成的Doctrine模型尊重大小写,但生成的Yaml却没有

Dav*_*aub 15 php orm yaml doctrine case

刚开始使用Doctrine ORM for PHP(v1.1.5)并遇到意想不到的事情.

我正在使用db(MySQL 4)生成模型:

Doctrine::generateModelsFromDb($pathToModels);
Run Code Online (Sandbox Code Playgroud)

然后使用以下方法从模型生成YAML:

Doctrine::generateYamlFromModels($pathToSchema . '/schema.yml', $pathToModels);
Run Code Online (Sandbox Code Playgroud)

在生成的模型中,列名称(如在中所定义hasColumn())对字段使用与db中相同的大小写.都好.

但是在生成的YAML中,列名都是小写的,与模型中的情况无关.

似乎没有任何可用的选项generateYamlFromModels(),我可以想象用来调整它.我应该在某个地方设置一些其他属性,可能是在连接级别,还是在经理级别等?可能是个bug吗?

任何想法都非常感激.谢谢,欢呼!

djh*_*987 2

看来这是一个错误。我这么说是因为YAML 区分大小写,而 Doctrine 的generateYAMLFromModels() 记录是区分大小写的。我确实发现了2.0 beta 中的一个区分大小写的错误。也许这是影响您的程序的错误。不过,除非有其他事情,看起来 Dimitris Baltas 的评论似乎是选择的解决方法:

另一种替代方法是从数据库生成模型,然后从模型生成 yaml。这个保留了正确的外壳。

狩猎快乐:)