Hallo allerseits,
ich setze mich jetzt schon seit einigen Wochen mit Extbase/Fluid auseinander. Ich habe vorher noch nie eine Extension erstellt und bin auf dem Gebiet noch ziemlich grün hinter den Ohren. Soweit ist auch alles klar und ich komme gut zurecht. Aber eine (für viele vielleicht banale) Sache verstehe ich nicht:
Ich habe auf der index View meines Controlers ein sehr simples Formular eingebaut. Es besteht aus einer Textbox und das wars. In die Textbox soll eine Ordernummer (bookingnumber) eingegeben werden und beim abschicken soll die showAction die Order (booking) mit der entsprechenden Nummer anzeigen.
Ich habe jetzt schon einige Tage lang Foren durchsucht und versucht mir das irgendwie verständlich zu machen. Aber ich brauche Hilfe :o
Das Formular in der index.html sieht so aus:
<f:form method="post" action="show">
Bookingnumber: <f:form.textbox name="bookingnumber" />
<f:form.submit value="Search" />
</f:form>
Und der entsprechende Teil des Controllers so:
/**
* Action that displays a single Booking
*
* @param Tx_RaFreighttracking_Domain_Model_Booking $booking The booking to display
*
*/
public function showAction() {
$booking = $this->bookingRepository->findOneByBookingnumber($bookingnumber);
$bookingnumber = $this->request->getArgument('bookingnumber');
$this->view->assign('booking', $booking);
}
Wenn ich statt:
findOneByBookingnumber($bookingnumber);
das hier schreibe:
findOneByBookingnumber('SA002');
dann wird die Order mit der Nummer SA002 angezeigt. Aber ich verstehe nicht, wie ich jetzt 'SA002' mit einer Variablen austauschen kann.
Bitte, bitte helft mir. Ich hab schon Kopfschmerzen deswegen #angry#
Viele Grüße aus Schanghai,
reginaldo