@Gambio Schön und gut... Aber wo finde ich die simplen "must have" Datenbankabfrage wie z.B. PHP: ...select('table')->findById(id)[->get()]; // Zeige mir alle Einträge...select('table')->findById(id)->get('column') // Zeige mir den Eintrag aus "column" Finde bis jetzt nichts davon und eine Klasse nach der anderen zu überladen nur um eine simple Datenbankabfrage zu machen ist ... ... und nein möchte nicht mit "xtc_" loslegen, damit ich in 6 Monaten alles wieder umkrempeln muss, weil hausinterne Lösung implementiert und der alte Müll entfernt wurde. Bitte @Gambio grenzt die einfachen Dinge des Lebens nicht nur für euren Code ein... Danke!!!
In der GXEngine ist auch eine aus CodeIgniter entnommene DB-Schicht, mit der man sowas tun kann. Ansich ist aber die Logik dass du wesentliche Entitäten nicht mehr direkt aus der DB holst. Unsere Idee ist eher alles hinter die Services zu werfen, die fragte dann ab. Das ist zugegeben noch nicht vollständig möglich, zeigt aber warum wir da wenig exponieren. Damit man irgendwie weiterkommt: An was willst du denn zum Beispiel ran? Welche Infomationen willst du gewinnen?
Habe eine Spalte in die Tabelle 'countries' eingefügt. Eure Klasse "CustomerFactory" hat die Methode PHP: public function createCustomerCountry(IdType $id, CustomerCountryNameInterface $name, CustomerCountryIso2Interface $iso2, CustomerCountryIso3Interface $iso3, IdType $addressFormatId, $status){ $country = MainFactory::create('CustomerCountry', $id, $name, $iso2, $iso3, $addressFormatId, $status); return $country;} somit wird meine Spalte nicht an weitere Klassen mit übergeben... ergo, ein überladen einer weiteren Klasse. Irgendwann werden es einfach zu viele overloads von Klassen und Ihr seid auch ständig euer System am erweitern, welche dann durch meine overloads zu irgendwelchen Fehler führen werden...
Ooooh man... zwei Klassen müssen überladen werden, damit die Übergabe einer neuen Spalte aus der besagten Tabelle an weitere Klassen updatesicher vonstatten geht, um am Ende doch noch gegen eine abstrakte Klasse zu prallen die nicht updatesicher überladen werden kann... Nun bin ich wirklich
Das noch etwas abstrakt für mich wo du hinwillst, aber mögen sich unsere Entwickler beizeiten äussern