我已經從Symfony 3.4遷移到4.4并從使用包移動到/src/目錄。當我查詢物體時,Doctrine 拋出例外:
$regions = $this->getDoctrine()->getRepository(Regions::class);
$regionInfo = $regions->findOneBy(array('region' => strtolower($regionSearch)));
結果:未捕獲的 PHP 例外 Doctrine\ORM\Mapping\MappingException:“類“App\Entity\Regions”不是有效的物體或映射的超類。
這是物體:
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity
* @ORM\Table(name="Regions")
*/
/**
* Regions
*/
class Regions
{
/** properties ... */
}
我想知道這是否是因為它找不到orm.xml其中的哪個bundle/Resources?也use Doctrine\ORM\Mapping as ORM出現未使用。
uj5u.com熱心網友回復:
您的注釋應該設定在類宣告的正上方:
/**
* Regions
* @ORM\Entity
* @ORM\Table(name="Regions")
*/
class Regions
對于您當前的檔案,僅讀取第一個 docblock,并且由于缺少@ORM\Entity注釋,Doctrine 認為它不是有效的物體類。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/403720.html
標籤:
上一篇:在需要時解決承諾
