Am 22.01.15 um 09:37 schrieb Hagen Gebauer:
Hallo Johannes,
vielen Dank für Deine Antwort. Genau genommen will ich nicht den im
FlexForm gewählten Eintrag ausgeben, sondern eine Liste von
DB-Einträgen, die mit diesem Eintrag übereinstimmen. Der Ausgabe im
Fluid-Template war letztlich nur ein Test, ob die Variable überhaupt
ankommt.
Wie dem auch sei: ich habe folgendes herausgefunden:
• das Array $this->settings ist nur im Controller, nicht aber in der
Repository verfügbar (ich war eigentlich überzeugt, das auch schon
getestet zu haben)
• im Fluid-Template ist {flexform.trackSelection} ebenfalls nicht verfügbar
So funktioniert es jetzt:
Controller-Methode:
public function listByTrackAction() {
$groups =
$this->groupsRepository->listByTrack($this->settings['flexform']['trackSelection']);
$this->view->assign('groups', $groups);
}
Repository-Methode:
public function listByTrack($primaryTrack) {
$query = $this->createQuery();
$query = $query->matching(
$query->like('primary_track', $primaryTrack)
);
return $query->execute();
}
Zudem habe ich einen Weg gefunden, mir jedweden String im Fluid-Template
auszugeben und damit eine Debugging-Methode geschaffen. Für den Fall,
dass es jemand anderen interessiert, führe ich es am Beispiel des Arrays
$this->settings['flexform'] mal aus:
(im Controller listByTrackAction())
$nr = 0;
foreach($this->settings['flexform'] AS $key => $val) {
$groups[$nr]['firstName'] = $key;
$groups[$nr]['lastName'] = $val;
$nr++;
}
Entscheidend ist die Zuordnung der Werte zum Array $groups[x], das ja im
Controller dem View zugeordnet wird (siehe oben)
Im Template gebe ich in einer Schleife
<f:for each="{groups}" as="group">
die Variablen {group.firstName} und {group.lastName} aus.
hm. du kennst aber schon den Viewhelper f:debug?
und {_all} definiert ein Array mit allen definierten Variablen:
<f:debug title="alle definierten Variablen">{_all}</f:debug>
da müßte dein flexform dann auch drin sein (sofern du nicht in einer
Section mit nur lokalen Variablen bist).
bernd
--
http://www.pi-phi.de/cheatsheet.html
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german