Hallo, ich versuche seit einiger Zeit das Prinzip zu verstehen, das hinter dem Attribut "arguments" steht.
Hier folgendes Beispiel, das Model heißt "stile":
<f:for each="{stiles}" as="stile">
<p>start</p>
<f:link.action action="show" arguments="{stile : stile}">
Do it!
</f:link.action>
</f:for>
Das ist ja sozusagen die Standard-übergabe der Properties
Bei
<f:debug>{stile}</f:debug>
erhalte ich in der Detailansicht sehr schön alle Eigenschaften angezeigt. Super!
Jetzt will ich aber zusätzlich einen Sting rüberschicken. Also probiere ich einmal das:
<f:for each="{stiles}" as="stile">
<p>start</p>
<f:link.action action="show" arguments="{stile : stile, key : 'wert'}">
Do it!
</f:link.action>
</f:for>
Laut dem Buch "zukunftsichere TYPO3-Extensions" von Jochen Rau/Sebastian Kurfürst ist es ja ausdrücklich möglich, mittels eines Schlüsselworts (key) Stings zu übergeben.
Jedoch bei
<f:debug>{key}</f:debug>
wird immer nur "Null" ausgespuckt. Das gleiche passiert übrigens auch wenn ich versuche, Zahlen zu übergeben. Hmm!
Übrigens ändert auch ein Eintag im Controller nichts:
/**
* action show
*
* @param \TYPO3\Extension\Domain\Model\Stile $stile
* @return void
*/
public function showAction(\TYPO3\Extension\Domain\Model\Stile $stile) {
$this->view->assign('stile', $stile);
$this->request->getArgument('key');
}
Der Parameter bleibt immer "NULL"
Was mache ich denn nur falsch?
Herzlichen Dank und beste Grüße
Carsten