Проблема с Doctrine_Expression (Doctrine 2) «Нет открытого соединения» - PullRequest
2 голосов
/ 15 июня 2011

У меня Doctrine2 работает нормально с моим стеком Zend PHP.

Однако, если я хочу использовать Doctrine_Expression ,

$item->setDateCreated(new Doctrine_Expression('NOW()'));

, я получаю следующую ошибку 'Нет открытого соединения' .Это трассировка стека:

#0 D:\data\wamp\bin\php\php5.3.5\PEAR\Doctrine\Manager.php(264): Doctrine_Manager->getCurrentConnection()
#1 D:\data\wamp\bin\php\php5.3.5\PEAR\Doctrine\Expression.php(72): Doctrine_Manager::connection()
#2 D:\data\wamp\bin\php\php5.3.5\PEAR\Doctrine\Expression.php(116): Doctrine_Expression->getConnection()
#3 D:\data\wamp\bin\php\php5.3.5\PEAR\Doctrine\Expression.php(133): Doctrine_Expression->parseExpression('NOW()')
#4 D:\data\wamp\bin\php\php5.3.5\PEAR\Doctrine\Expression.php(89): Doctrine_Expression->parseClause('NOW()')
#5 D:\data\wamp\bin\php\php5.3.5\PEAR\Doctrine\Expression.php(60): Doctrine_Expression->setExpression('NOW()')
#6 D:\data\work\gazette\Projects\NorskTipping\admin-system\code\application\library\MagicHeads\Knalledge\Models\Tagging.php(91): Doctrine_Expression->__construct('NOW()')
...
#14 {main}

Я пытался добавить соединение

$item->setDateCreated(new Doctrine_Expression('NOW()', $this->_em->getConnection()));

Однако бывает, что это соединение типа Doctrine \ DBAL \ Connection , в то время как Doctrine_Expressionтребуется Doctrine_Connection

Как я могу получить Doctrine_Connection и предоставить его Doctrine_Expression?

1 Ответ

3 голосов
/ 19 июня 2011

Doctrine_Expression является классом Doctrine 1 и не может использоваться с Doctrine 2. Эти две версии очень разные и не совместимы.

...