1

Doctrine 2私は自分のZendプロジェクトに統合しました。を使用するDoctrine場合は、データ定義をに入れ、 (チュートリアルEntity\MyEntity.phpに示されているように)に入れないでください。Model\MyModel.php

チュートリアルでは、MyModelTable.phpfetchAll()をマネージャーとして使用します。マネージャーでは、などのクエリを定義できます。

Doctrineでこれをアーカイブするにはどうすればよいですか?modelそして、ディレクトリを削除することはできますか?

4

1 に答える 1

3

DoctrineORMModuleを使用していますか?これにより、DoctrineがサービスとしてZFに適切に統合されます。これを行ったら、Doctrineエンティティを含む独自のモジュールごとに、これをmodule.config.phpに追加します。

<?php

namespace YourModul;

return array(
    // ... your module configuration ...

    'doctrine' => array(
        'driver' => array(
            __NAMESPACE__ . '_driver' => array(
                'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
                'cache' => 'array',
                'paths' => array(
                    __DIR__ . '/../src/' . __NAMESPACE__ . '/Entity'
                ),
            ),
            'orm_default' => array(
                'drivers' => array(
                    __NAMESPACE__ . '\Entity' => __NAMESPACE__ . '_driver'
                ),
            ),
        ),
    ),
);

modules/YourModule/src/YourModule/Entity/これにより、デフォルトのDBALドライバーを使用して、で注釈が構成されたエンティティを検索するようにDoctrineが構成されます。

また、 DoctrineORMModuleページの説明に従って、DoctrineのDBALコンポーネントを構成する必要があります。

クリーンアップするには、モデルディレクトリを削除し、定義したエンティティクラスを使用するだけです。他のすべては通常どおりに機能します。

于 2012-12-22T16:10:57.393 に答える