Как получить Doctrine ArrayCollection из createNativeQuery - PullRequest
1 голос
/ 27 января 2020

Попытка получить доктрины ArrayCollection от createNativeQuery, однако возвращает ноль и не может найти то, что я делаю здесь неправильно. Кажется, все сделано в соответствии с документацией , но, похоже, у меня это не работает. Код ниже:

$rsm = new ResultSetMapping();
$rsm->addEntityResult(CurrencyExchangeRate::class, 'u');

$rsm->addFieldResult('u', 'rate', 'rate');
$rsm->addJoinedEntityResult(Currency::class, 'a', 'u', 'currency');
$rsm->addFieldResult('a', 'currency_id', 'id');
$rsm->addFieldResult('a', 'name', 'name');
$rsm->addFieldResult('a', 'code', 'code');
$rsm->addFieldResult('a', 'symbol', 'symbol');

$query = $this->em->createNativeQuery('SELECT u.rate,a.id as currency_id, a.name,a.code,a.symbol
                                    FROM currency_exchange_rates_new u
                                    INNER JOIN currencies_new a on u.currency_id = a.id
                                    WHERE u.update_time=(SELECT MAX(update_time) FROM currency_exchange_rates_new u2 WHERE u2.currency_id=u.currency_id)
                                    GROUP BY u.currency_id',$rsm);

$currency_exchange_rates = $query->getResult();
foreach ($currency_exchange_rates as $currency_exchange_rate) {
    error_log(var_export($currency_exchange_rate,true)."\n",0);
}

Вывод журнала ошибок

NULL

NULL

NULL

NULL

Может кто-нибудь сказать мне, что мне здесь не хватает?

...