DQL 代码:
$dql = "SELECT a, FIELD(a.id, ".$implodedIds.") as HIDDEN field "
. "FROM \activity\models\Entities\Activity a "
. "WHERE a.id IN (".$implodedIds.") "
. "ORDER BY field ASC ";
$em = \Zend_Registry::get('em');
$doctrineConfig = $em->getConfiguration();
$doctrineConfig->addCustomStringFunction('FIELD', 'DoctrineExtensions\Query\Mysql\Field');
$query = $em->createQuery($dql);
$docResults = $query->getResult();
实体结构的一般要点:(单表继承)
Activity
Opinion extends Activity
Comment extends Activity
Counter extends Activity
此 dql 代码正在返回 Activity 实体,但是我希望它能够自动将它返回的实体区分为 Opinions、Comments 和 Counters。Doctrine 在其他情况下这样做没有任何问题,但由于某种原因在这里没有。(在我查询 Activity 的其他情况下,IE 会为我提供一系列意见、评论和计数器)
谁能告诉我为什么这一次,它没有自动区分它们?