“无法找到类”Doctrine子查询

时间:2011-01-14 17:08:17

标签: php mysql symfony1 doctrine

我正在使用Symfony 1.4和Doctrine。我有一个名为Image的教义类和一个通过查询(应该)找到下一个和前一个值的方法。违规代码如下所示:

$q = Doctrine_Core::getTable('Image')->createQuery()
            ->from('Image i')
            ->where('i.id = (select max(a.id) from Image a where ? > a.id and is_active = 1)', $this->getId())
            ->orWhere('i.id = (select min(b.id) from Image b where ? < b.id and is_active = 1)', $this->getId());

我总是得到

  

500 |内部服务器错误| Doctrine_Exception找不到类a

错误。任何提示?

1 个答案:

答案 0 :(得分:3)

嗯,事实证明,在这种情况下,Doctrine是区分大小写的。工作代码如下所示:

$q = Doctrine_Core::getTable('Image')->createQuery()
            ->from('Image i')
            ->where('i.id = (SELECT MAX(a.id) FROM Image a WHERE ? > a.id AND is_active = 1)', $this->getId())
            ->orWhere('i.id = (SELECT MIN(b.id) FROM Image b WHERE ? < b.id AND is_active = 1)', $this->getId());