Wie kann ich mit Redirect- oder Forward-Funktionen zu einer anderen Aktion umleiten? Meine Lösung scheint nichtTYPO3 extbase vorwärts, Redirect-Aktion
public function listAction() {
$products = $this->productRepository->findAll();
$this->view->assign('products', $products);
}
public function showAction() {
$var = $this->request->getArgument('searchProduct');
$foundProd = new \MyVendor\Inventory\Domain\Model\Product($var);
$prod = $this->productRepository->getProduct($foundProd);
\TYPO3\CMS\Core\Utility\DebugUtility::debug($prod);
$this->view->assign('test',$prod);
$this->redirect('list',NULL,NULL,array(''));
// $this->forward('list',NULL, NULL, $this->request->getArguments());
}
Im Hinblick auf die Arbeit, ich versuche die foundProduct in der gleichen Seite zu zeigen (nicht durch eine neue Datei show.html Schaffung)
<f:widget.paginate objects="{products}" as="paginatedProducts"
configuration="{itemsPerPage: 10, insertAbove: 0, insertBelow: 1, maximumNumberOfLinks: 10}">
<f:for each="{paginatedProducts}" as="productx">
<tr>
<td align="top">{productx.uid}</td>
<td align="top">{productx.name}</td>
<td align="top"><f:format.crop maxCharacters="100">{productx.description}</f:format.crop></td>
<td align="top">{productx.quantity}</td>
</tr>
</f:for>
</f:widget.paginate>
</table>
</div>
<div class="col-sm-5">
<f:form method="post" controller="Inventory" action="show" name="searchProduct" object="{searchProduct}">
<label> Product Name <span class="required"></span><br />
<f:form.textfield property="name" /></label><br />
<f:form.submit class="submit" value="Submit"/>
<div>
<f:for each ="{test}" as ="p">
<P>Numele produsului : {p.name}</P>
<p>Descriere : {p.description}</p>
<p>Cantitate : {p.quantity} </p>
</f:for>
</div>
</div>
Ihr Code jedes Mal, die Sie ausführen 'showAction' wollen' listAction' zu umleiten scheint. Wollen Sie das tun? –
Ich möchte, dass beide Aktionen auf der gleichen Seite (HTML-Datei) ausgeführt werden. Typo3 zwingt mich, für jede Aktion eine andere .html-Datei zu erstellen, in meinem Fall list.html und show.html. Anstatt show.html zu erstellen, möchte ich showAction in der list.html ausführen. –
Ich kann die Idee nicht dahinter kommen. Die 'showAction' sollte etwas anzeigen, meistens das Detail eines Datensatzes wie die Detailansicht in der News-Erweiterung. Die einzige Zeit, die ich Redirects verwende, ist, wenn ich z. einen Datensatz aktualisieren und nach dem Speichern der Änderungen zur Liste zurückkehren. Du solltest deine Handlungen überdenken und was in dort imho tun. –