ネイティブ クエリを実行しようとすると、Doctrine の ResultSetMapping で問題が発生します。
$sql = "SELECT id, thesis "
. "FROM activity p "
. "WHERE MATCH (thesis) AGAINST ('Gun') ";
$rsm = new \Doctrine\ORM\Query\ResultSetMapping;
$rsm->addEntityResult('activity\models\Entities\Opinion', 'p');
$rsm->addFieldResult('p', 'id', 'id');
$rsm->addFieldResult('p', 'thesis', 'thesis');
$query = $this->_em->createNativeQuery($sql, $rsm);
$results = $query->getResult();
return $results;
まず第一に、データベースに世界の「銃」を含むエントリがあり、それをデータベースにないものに変更するとエラーが発生するため、SQL側が何かを見つけているという事実を知っています.
結果セットマッピング コードは残ります。エラーは発生していませんが、getResult() によって返される配列は空白です。これは、マッピングが間違っているのではないかと疑っています。
問題が何であるかをさらに特定するために私ができることについて何か提案はありますか?