我对 Symfony 和 Doctrine 还很陌生,因此一直在研究一些代码的分支,我需要在不久的将来将其用于商业用途。
长话短说,我现在正处于修改现有实体以添加新参数的阶段。我已经更新了 ORM 注释来表示这一点,正如我所理解的,如果我运行以下命令:
php app/console doctrine:migrations:diff
这应该会自动更新数据库表以添加新列来容纳我的新属性。但是,当我运行它时,出现以下错误:
[Doctrine\DBAL\Exception\ConnectionException]
An exception occured in driver: SQLSTATE[HY000] [2002] php_network_getaddresses: getaddrinfo failed: nodename nor servname provided, or not known
可能值得注意的是,当您通过浏览器中的表单与该项目交互时,该项目已经成功与数据库进行通信,因此我很困惑为什么会出现此错误?
我还在 Docker 容器上运行数据库,我认为这可能是导致此错误的原因。
有什么想法吗?
最佳答案
为了使 symfony2 能够与您的数据库通信,您需要在 app/config/parameters.yml
中设置正确的参数。
在使用composer
进行初始安装时,命令行还可以询问这些参数(数据库、用户名、密码和主机名)。
无论使用哪种方法,最终您都会在 app/config/parameters.yml
中找到它们。
祝你好运!
关于php - 在 symfony 中更新数据库架构时发生异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34679646/