1

私はbasickyがこのhttp://www.zendcasts.com/one-to-many-with-doctrine-2/2011/03/チュートリアルに従ってステップを実行しました(ソースコードはそこからダウンロードできます)。そして、すべてがうまく機能するので、購入とユーザーの2つのエンティティを取得しました。Userにクエリを実行するとすべて問題ありませんが、Purchaseにクエリを実行すると次のようになります。

$entityManager->createQuery('select p from ZC\Entity\Purchase p where p.id = 1')->execute();

致命的なエラーが発生します:

Fatal error: require() [function.require]: Failed opening required 'C:\xampp\htdocs\CoChces\application/../library/CC/Entity/Proxy\CCEntityCategoryProxy.php' (include_path='C:\xampp\htdocs\CoChces\application/../library;C:\xampp\htdocs\CoChces\library;.;C:\xampp\php\PEAR') in C:\xampp\htdocs\CoChces\library\Doctrine\ORM\Proxy\ProxyFactory.php on line 85

しかし、購入でこの行にコメントすると、次のようになります。

 /**
 *
 * @var User
 * @ManyToOne(targetEntity="User")
 * @JoinColumns({
 *  @JoinColumn(name="user_id", referencedColumnName="id")
 * })
 */
private $user;

Everithingは問題なく機能します。したがって、@ManyToOneアノテーションには何らかの問題があるはずです。誰もがそれをどうするか知っていますか?おそらくいくつかの回避策はありますか?

答えてくれてありがとう。

PHP5.3.8を使用しています

4

1 に答える 1

0

いくつかのこと...

  1. 注釈の構文が正しくないようです。試す

    /**
     * @var User
     * @ManyToOne(targetEntity="User")
     */
    private $user;
    

    @JoinColumnsドキュメントのどこにも表示されません。また、@JoinColumnデフォルト値を使用しているため、注釈は冗長です。http://www.doctrine-project.org/docs/orm/2.1/en/reference/association-mapping.html#many-to-one-unidirectionalを参照してください

  2. DQL クエリはZCネームスペース ルートを参照していますが、エラー メッセージにはCC. どちらが正しい?

于 2011-10-11T00:13:37.053 に答える