gpt4 book ai didi

doctrine-orm - 如何在Doctrine 2中测试该连接是否工作?

转载 作者:行者123 更新时间:2023-12-04 02:37:56 25 4
gpt4 key购买 nike

我正在寻找一种方法来测试与Doctrine 2的连接是否正常工作。
由于在我的应用程序中,用户可以自己更改信息连接,因此我想检查用户是否输入了正确的登录名和密码。
我怎样才能做到这一点?
我试图将这段代码放入try/catch块中:

try{
$entityManager = $this->getEntityManager() ;
$repository = $entityManager->getRepository('Authentification\Entity\User');
$userToIdentify = $repository->findOneBy(array('login' => $this->_username, 'password' => $this->_password));
}catch(Exception $e){
$code = Result::FAILURE ;
$identity = "unknow" ;
$messages = array(
"message" => "Wrong login/password combination",
) ;
}
问题是,即使信息连接正确,我也无法捕获到异常。
否则我得到以下错误:
<b>Fatal error</b>:  Uncaught exception 'Zend\View\Exception\RuntimeException'
with message 'Zend\View\Renderer\PhpRenderer::render: Unable to render template
&quot;layout/layout&quot;; resolver could not resolve to a file' in C:\xampp\htdocs\poemsV3\vendor\zendframework\zendframework\library\Zend\View\Renderer\PhpRenderer.php:451 Stack trace: #0 C:\xampp\htdocs\poemsV3\vendor\zendframework\zendframework\library\Zend\View\View.php(203): Zend\View\Renderer\PhpRenderer-&gt;render(Object(Zend\View\Model\ViewModel)) #1 C:\xampp\htdocs\poemsV3\vendor\zendframework\zendframework\library\Zend\Mvc\View\Http\DefaultRenderingStrategy.php(128): Zend\View\View-&gt;render(Object(Zend\View\Model\ViewModel)) #2 [internal function]: Zend\Mvc\View\Http\DefaultRenderingStrategy-&gt;render(Object(Zend\Mvc\MvcEvent))#3 C:\xampp\htdocs\poemsV3\vendor\zendframework\zendframework\library\Zend\EventManager\EventManager.php(469): call_user_func(Array, Object(Zend\Mvc\MvcEvent))#4 C:\xampp\htdocs\poemsV3\vendor\zendframework\zendframework\library\Zend\EventManager\EventMa in <b>C:\xampp\htdocs\poemsV3\vendor\zendframework\zendframework\library\Zend\View\Renderer\PhpRenderer.php</b> on line <b>451</b><br />
您对如何测试连接是否有效有任何想法吗?
谢谢你。

最佳答案

不要直接使用EntityManager。您可以改为使用以下命令检查连接参数:

try {
$entityManager->getConnection()->connect();
} catch (\Exception $e) {
// failed to connect
}
遗憾的是,这是检查是否出错的唯一真实方法,因为异常类型会根据您使用的驱动程序而变化。
对于另一个异常(exception)(与 View 相关的异常(exception)),您只需要调整 View 脚本路径即可。我建议您保持 skeleton application module启用,以便始终使用默认布局:您可以 override it at any time

关于doctrine-orm - 如何在Doctrine 2中测试该连接是否工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14933388/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com