0

みなさん、こんにちは。私はDoctrineの結合クエリで立ち往生しています。

システムは、オークションがマップされていないことを通知し続けます。

Class Auction does not exist and could not be loaded in Doctrine/doctrine-orm/Doctrine/Common/Persistence/Mapping/RuntimeReflectionService.php on line 40

プロジェクトはすでに進行中であり、明らかに、他の参加も成功裏に使用されました。

include_once '../../../bootstrap_doctrine.php';

$rsm = new \Doctrine\ORM\Query\ResultSetMapping;
$rsm->addEntityResult('Auction', 'Au');
$rsm->addEntityResult('VariantPerAuction', 'Vpa');

$Q=" SELECT Au.id
FROM Auction Au
JOIN VariantPerAuction Vpa ";
        $query = $entityManager->createNativeQuery($Q,$rsm);

$auctions = $query->getResult();
4

1 に答える 1

1

Marco Pivetta のおかげで、動作するようになりました。

問題は、Doctrine2 クラスが完全に名前空間化されていなかったことです。

それらを完全に名前空間化する高速トライアルが機能します。

各クラスの上に:

// put the folder where your class is
 namespace DbClasses\entities;

新しい結合クエリは次のようになります。

$rsm = new \Doctrine\ORM\Query\ResultSetMapping;
$rsm->addEntityResult('DbClasses\entities\Auction', 'Au');
$rsm->addEntityResult('DbClasses\entities\VariantPerAuction', 'Vpa');

$Q=" SELECT Au.id
FROM Auction Au
JOIN VariantPerAuction Vpa 
Where Au.piattaforma='EbayDE' AND Au.OggettoEbayDBContainer_id=159";

$auctions = $query->getResult();
于 2012-09-12T07:57:29.557 に答える