0

少し前に symfony2 と doctrine を使い始めました。JOINED 継承型を持つ 2 つのクラス (サブクラスと親クラス) があります。接続は正常に機能しているように見えます doctrine:generate:entities が、サブクラスで実行すると、Doctrine はすべての親クラスのメソッドとプロパティをサブクラスに追加します。さらに、それらは親クラスにあるprivateにもかかわらず、すべてとして宣言されています。protected

いくつかの理由から、これらすべてをサブクラスに追加したくありません。主に:

  • 教義自体は、「保護された」シンボルは「プライベート」として再宣言できないと言って、この設定について不平を言っています。これにより、SQL が生成されなくなります。
  • 親クラスのこれらのメソッドのいくつかを変更する必要がある可能性が高く、その変更をサブクラスに引き継がせたいと考えています。

質問は次のとおりです。

  1. これは正常な動作ですか、それとも私が犯した間違いによるものですか?
  2. それを行うためにドクトリンを停止するにはどうすればよいですか? そのクラスで「doctrine:generate:entities」を再度実行することはできませんでしたが、それ以外の機能には感謝しています。
  3. これは私が認識していない設計パターンですか? もしそうなら、私はそれが何に役立つのか非常に興味があり、それについてもっと知りたい.

みんなに感謝!

4

1 に答える 1

1

FAQ に記載されているように、 Doctrine の制限に遭遇しました。エンティティ ジェネレータは継承を使用してエンティティを生成できません。手動で編集する必要があります。

于 2013-06-12T09:53:17.170 に答える