私はZendFramework 2とDIのアイデア全体に不慣れです。
ここに私が達成する必要があるものがあります:
- 単一の AbstractModel を拡張する多数の Model クラスを作成する
- 依存関係のある DI を使用してその AbstractModel を提供します (私の場合は教義エンティティ マネージャー)
- 通常のクラスとして必要な場所で祖先クラスを使用する
3. をよりよく説明するために、次の例を見てみましょう。
class Ancestor extends Parent { }
コントローラー内、または理想的にはどこでも:
$ancestor = new Ancestor();
$ancestor->doStuffWithEntityManager();
祖先を初期化すると、注入されたリソースをすでに認識している必要があります。
これは可能ですか?デフォルトの形式で使用しない場合は、すべての祖先を指定する必要がない限り、一部のサービス マネージャーなどを介して祖先を初期化しても問題ありません。zend に伝える必要があります: X を拡張/実装するすべてのクラスにこれとあれを注入します。
何か案は?
PS: 私が言ったように、私はまったく新しいので、サンプル コードの各部分を追加する必要がある構成/クラス ファイルを指定してください。