Doctrine ReflectionException プロパティが存在しません 質問する

Doctrine ReflectionException プロパティが存在しません 質問する

既存のデータベースの上にDoctrineを追加しようとしています。Doctrineに注釈付きエンティティを生成させ、そこから調整しました。以下のエンティティをロードしようとすると、エラーが発生します。PHP Fatal error: Uncaught exception 'ReflectionException' with message 'Property Users\\User::$resellerID does not exist'

class User
{
    /* ... */

    /**
     * @var \Doctrine\Common\Collections\Collection
     *
     * @ORM\ManyToOne(targetEntity="\Resellers\Reseller")
     * @ORM\JoinTable(name="reseller",
     *   joinColumns={
     *     @ORM\JoinColumn(name="resellerID", referencedColumnName="resellerID")
     *   },
     *   inverseJoinColumns={
     *     @ORM\JoinColumn(name="resellerID", referencedColumnName="resellerID")
     *   }
     * )
     */
    private $reseller;

    /* ... */
}

userresellerテーブルの両方にresellerID列があります。私の理解では、ID 列を結合するには、ID 列をエンティティ クラスのプロパティとして追加しません。では、ReflectionException の原因は何でしょうか?

ベストアンサー1

自動生成されたプロパティの名前を から に変更したためresellerID(reseller使用しようとした後)、Doctrine キャッシュをクリアする必要があることがわかりました。

php vendor/bin/doctrine.php orm:clear-cache:result
php vendor/bin/doctrine.php orm:clear-cache:query
php vendor/bin/doctrine.php orm:clear-cache:metadata

または、Symfony を Doctrine と一緒に使用している場合:

php bin/console doctrine:cache:clear-result
php bin/console doctrine:cache:clear-query
php bin/console doctrine:cache:clear-metadata

おすすめ記事