Hallo zusammen.
Ich habe gerade das Buch Zukunftssichere Extensions mit Extbase und Fluid durchgearbeitet bzw. bin dabei. Ich hatte Probleme mit der Beispiel Extension, sjr_offers. Darum sind mir ein paar Dinge noch nicht ganz klar. Es ein paar Basics die ich noch nicht verstanden hab. Vielleicht könnt ihr mir bitte weiterhelfen. Nur ein kleines Beispiel. Ich habe ein Model, das aus 2 Klassen besteht, eine Entity und ein Value Object. Die Entity heisst partner und das Value object heisst description. In der Entity ist eine Property, die auf das Value Object referenziert. Es besteht in 1:n Beziehung zwischen dem Eltern Objekt Partner und Kind Objekt Description. Ich habe ein Repository für die entity partner gemacht, also die Klasse die von der Repository Klasse TX_Extbase_Persistence_Repository erbt. Dann habe ich einen Controller für die Entity partner. Wenn ich nun einen View generieren will und einfach alles ausgeben möchte, was im Repository steht, konkret alle partner und für jeden partner x-Beschreibungen, die jeder partner haben kann, kann ich das dann alles mit dem partner controller machen ? mit findAll() kann ich ja z.b. alles was im repository partner steht finden dann gibt er mir aber auch nur die UID's der beschreibungen, also der klasse description aus, wenn ich das dann dem view zum rendern übergebe. wie macht man das denn nun richtig wenn man alle partner und alle dazugehörigen descriptions ausgeben möchte also nicht nur die UIDs der descriptions ? Mit der listAction(), in den nächsten Zeilen dargestellt, werden alle Objekte aus dem Partner Repository dem View übergeben, dabei werden nur die UID's der Description Objekte (Description ist ein ValueObject, im Partner Objekt ist ein Fremdschlüssel zum Description Objekt) mitübergeben, ich möchte aber dass die Description Objekte selber ausgegeben werden, also zu jedem Partner Objekt alle Description Objekte, die dazugehören, nicht nur die UID's. So, ich hoffe meine Erklärung kann man so verstehen.
class Tx_PartnerFinder_Controller_Partner_Controller extends Tx_Extbase_MVC_Controller_ActionController { public function listAction(){ $partnerRepository = t3lib_div::makeInstance('Tx_PartnerFinder_Domain_Repository_PartnerRepository'); $partners = $partnerRepository->findAll(); $this->view->assign('partners',$partners) } }
Vielen Dank vorab und einen guten Start in die Woche.
Gruss Thomas