Gemäß Dokumentation von Doctrine , gibt es drei Möglichkeiten, eine Klasse zu erweitern:
- Zugeordnete Oberklasse :die übergeordnete Klasse ist nicht eine Entität.
- Einzeltabellenvererbung :eine große Tabelle für alle Daten (einschließlich der zusätzlichen Felder).
- Klassentabellenvererbung :eine Haupttabelle plus eine zusätzliche Tabelle für jede Entität mit zusätzlichen Feldern.
Sie wollen entweder die Einzeltabellenvererbung oder die Klassentabellenvererbung.
Die zugeordnete Superklasse funktioniert nicht, weil Sie die Elternklasse Post wollen eine eigenständige Einheit zu sein. In diesem Fall der Post Klasse sollten Sie sie nicht als abstract definieren .
Wenn Sie nicht viele zusätzliche Felder haben, sollten Sie wahrscheinlich die single table inheritance verwenden .