Wie wird eine Datenbankzeile in ein Objekt verpackt?
Ich möchte eine Zeile, die ich über den Primärschlüssel abfrage:
“select * from oxnews where oxid = ‘…’”
so in ein Objekt verpacken lassen um die einzelnen Felder dieser Zeile in der View mit [{ oxnews__ oxshortdesc}] o.ä. auszugeben? Kann mir da mal jemand bitte ein einfaches Beispiel zeigen?
Falls die vorhandene Funktionalitaet nicht genuegt. musst Du wahrscheinlich ein kleines module schreiben, das die views/news.php mit einer Funktion um das gewuenschte news Objekt zu holen erweitert.
Ja, ich weiß, dass das Framework so etwas mitbringt, aber ich verstehe eben nicht, wie ich es nutzen kann und leider finde ich keine Dokumentation dazu :o
Es geht darum, wie kann ich dem Controller eine DB-Tabelle und den Wert des Primärschlüssels mitteilen, so dass er mir genau die Verwendung des Beispiel ermöglicht:
[{ $myuser->oxuser__oxlname->value }]
Das Objekt $myuser wird ja so erstellt:
$myuser= oxNew("oxuser");
Nun ist $myuser->oxuser__oxlname->value aber noch leer und ich möchte einen bestimmten User in dieses Objekt reinladen, also so etwas in der Art:
$myuser = oxDb::getDb()->Execute("select * from oxuser where oxid = '123'");
Das funktioniert so aber leider nicht :mad:!? oxuser ist übrigens nur ein Beispiel für alle, auch eigene Tabellen (ich habe entsprechende Modell und View-Klassen bereits erstellt, verstehe aber nicht, wie der Controller verwendet wird).
Ich könnte natürlich auch um den Controller herum programmieren, aber das würde dann eben nicht in die oxid MVC-Architektur passsen und das will ich eigentlich nicht.
Für sachdienliche Hinweise die zur Klärung des Problems beitragen, bin ich sehr dankbar
[QUOTE=bxnew;44077]Ja, ich weiß, dass das Framework so etwas mitbringt, aber ich verstehe eben nicht, wie ich es nutzen kann und leider finde ich keine Dokumentation dazu :o
Es geht darum, wie kann ich dem Controller eine DB-Tabelle und den Wert des Primärschlüssels mitteilen, so dass er mir genau die Verwendung des Beispiel ermöglicht:
[{ $myuser->oxuser__oxlname->value }]
Das Objekt $myuser wird ja so erstellt:
$myuser= oxNew("oxuser");
Nun ist $myuser->oxuser__oxlname->value aber noch leer und ich möchte einen bestimmten User in dieses Objekt reinladen, also so etwas in der Art:
$myuser = oxDb::getDb()->Execute("select * from oxuser where oxid = '123'");
Das funktioniert so aber leider nicht :mad:!? oxuser ist übrigens nur ein Beispiel für alle, auch eigene Tabellen (ich habe entsprechende Modell und View-Klassen bereits erstellt, verstehe aber nicht, wie der Controller verwendet wird).
Ich könnte natürlich auch um den Controller herum programmieren, aber das würde dann eben nicht in die oxid MVC-Architektur passsen und das will ich eigentlich nicht.
Für sachdienliche Hinweise die zur Klärung des Problems beitragen, bin ich sehr dankbar :)[/QUOTE]
[QUOTE=avenger;44082]Das geht mit der “load”-Methode…
[/QUOTE]
Dankeschön :)!
[QUOTE=cpjolly;44088]@bxnew,
Hast Du diese Tutorials gesehen ?
CPJ[/QUOTE]
Ja, ich habe eigentlich alle, die für mich relevant erschienen und wo ich die Antwort auf meine Frage vermutet habe, gelesen - aber leider nichts gefunden. Ich habe gerade auch nochmal drauf geschaut, aber nichts mit load() gefunden. Vielleicht habe ich es auch übersehen…