2

zendフレームワークプロジェクトにzf-boilerplateを使用しています。Gedmo拡張機能を使用しており、ブートストラップでDoctrineイベントマネージャーのインスタンスを取得する必要があります。

すなわち。私は次のことができるようになりたいです:

$ evm = $ this-> getDoctrine()-> getEventManager()

これどうやってするの?

4

1 に答える 1

1

呼び出すことでエンティティマネージャーにアクセスできます

Zend_Registry::get('em');

ブートストラップの途中である場合は、アクセスする前にエンティティ マネージャーをブートストラップしてください。

リソース メソッドと同様に、bootstrap() メソッドを使用してリソース プラグインを実行します。リソース メソッドと同様に、単一のリソース プラグイン、複数のプラグイン (配列を介して)、またはすべてのプラグインを指定できます。さらに、組み合わせて組み合わせてリソース メソッドを実行することもできます。( Zend Framework マニュアル)

つまり、最初に以下のコードを実行します

// Execute all resource methods and plugins:
$bootstrap->bootstrap('doctrine');

アップデート

質問が EventManager に関するものであることに気付きませんでした。アクセスするには、以下のコードを使用してください

Zend_Registry::get('doctrine')->getEventManager ();

于 2012-09-23T10:27:37.863 に答える