Доктрина 2.1 - нативный запрос - PullRequest
0 голосов
/ 26 января 2012

У меня есть эти данные в базе данных:

таблица: games_related

game_id1  |  game_id2
   3      |      2
   4      |      2

И я использую этот код для получения этих данных:

$rsm = new Doctrine\ORM\Query\ResultSetMapping;
$rsm->addEntityResult('Game', 'g1');
$rsm->addEntityResult('Game', 'g2');
$rsm->addFieldResult('g1', 'id', 'game_id1');
$rsm->addFieldResult('g2', 'id', 'game_id2');
$result = $this->db->createNativeQuery("SELECT game_id1, game_id2 FROM games_related WHERE :game IN (game_id1, game_id2)", $rsm)->setParameter('game', $game->getId())->getResult();

Почемуvar_dump($result); возвращает array(0) { }, когда $game->getId() = 2?

1 Ответ

1 голос
/ 27 января 2012

Если ваша сущность Game имеет поле $id, это будет: метод ResultSetMapping#addFieldResult() ожидает, что вы вызовете

$rsm->addFieldResult('g1', 'game_id1', 'id');

addFieldResult ()

...