Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
防止HandlerRequest连接到Symfony2中的数据库_Symfony - Fatal编程技术网

防止HandlerRequest连接到Symfony2中的数据库

防止HandlerRequest连接到Symfony2中的数据库,symfony,Symfony,我正在本地主机上运行Symfony2,并禁用了对internet的任何访问 我试图不依赖数据库进行开发。但是,当我尝试使用handleRequest()从表单获取值时,无论出于何种原因,它都试图使用我的原始MySQL配置连接到数据库 我查看了堆栈trance,handleRequest()不需要访问数据库。为什么它试图连接,并给我错误无法连接到MySQL服务器?我只是向表单提交数据 我现在所做的是使用一个空的try/catch try { $Form->handleRequest(

我正在本地主机上运行Symfony2,并禁用了对internet的任何访问

我试图不依赖数据库进行开发。但是,当我尝试使用
handleRequest()
从表单获取值时,无论出于何种原因,它都试图使用我的原始MySQL配置连接到数据库

我查看了堆栈trance,
handleRequest()
不需要访问数据库。为什么它试图连接,并给我错误
无法连接到MySQL服务器
?我只是向表单提交数据

我现在所做的是使用一个空的
try/catch

try {
    $Form->handleRequest($request);
} catch (\Doctrine\DBAL\DBALException $e) {
}

if ($Form->isValid()) {
//do something
}
以上内容允许我提交并验证表格。为我尝试验证的每个表单复制
try/catch
代码似乎是不必要的

有什么我遗漏的吗

以下是堆栈跟踪:

自Doctrine DBAL 2.5(2014年12月发布)以来,对于某些数据库驱动程序(如MySQL),它将急切地连接到服务器以确定服务器版本。这可能被认为是一个bug,其中有一个bug,还有更多的背景信息

目前,修复或解决方法是在
app/config/config.yml
中的连接配置中指定MySQL服务器版本。您应该根据您的MySQL服务器指定适当的版本,可能是5.5或5.6

doctrine:
    dbal:
        connections:
            default:
                # connection parameters ...
                server_version: 5.6

你还在装条令吗?该错误消息意味着您将MySQL列为数据库驱动程序,我认为您需要确保不将doctrine作为应用程序的一部分加载。@George我确实将MySQL列为数据库驱动程序。然而,除非我需要使用它,否则我不需要加载它。应用程序需要连接的地方。表单的约束条件是什么?@Leggendario我没有任何需要访问数据库的约束条件。甚至不是定制的。只有一个
Country
选项列表字段具有
NotBlank
约束。您能给我们异常的整个堆栈跟踪吗?是的,就是这个。我希望能很快修好。