Ich versuche, eine Doctrine 2-Entity zu untergliedern, um eine Reihe von "Helfer" -Funktionen hinzuzufügen, die ich gerne verwenden würde.Subclass Doctrine 2 entity
Zum Beispiel, das ist meine Einheit:
namespace Project\Entity;
class Product
{
private $name;
private $idProductCategory;
}
Mapping über XML-Dateien durchgeführt wird.
Dann versuche ich, es zu verlängern:
namespace Project\Entity;
class ProductJSON extends Product {
public function toJSON() {
/* ... */
}
}
Wenn ich versuche, dieses Objekt in Lehre zu verwenden:
$a = $entityManager->getRepository('\Project\Entity\ProductJSON');
ich die "Keine Zuordnung Datei mit dem Namen gefunden Project.Entity erhalten. ProductJSON.dcm.xml "Fehler. Das ist vollkommen richtig, denn ich möchte kein zusätzliches Mapping.
Ich habe Doctrine Dokumente und über zugeordnete Super Classes ausführlich gelesen (Doctrine: extending entity class), aber soweit ich verstehe, ist das für die Erweiterung von Entitäten in einem DB-Sinne.
Ich interessiere mich nicht für die Datenbank/Mapping, ich möchte nur Entitäten PHP-weise zu erweitern, um die Objekte nahtlos in meiner Anwendung zu verwenden.
Wie wird dieses Ziel erreicht?
Ist nur Ihr Beispiel falsch oder fehlt Ihnen tatsächlich die Anweisung 'extends Product'? –
Nur in dem Beispiel fehlt. Redigiert danke. –