Formulare mit Extbase und Fluid: Unterschied zwischen den Versionen

Aus Wikizone
Wechseln zu: Navigation, Suche
Zeile 1: Zeile 1:
 +
== Links ==
 +
http://docs.typo3.org/typo3cms/ExtbaseGuide/Fluid/ViewHelper/Form/Index.html
 +
 
== Überblick ==
 
== Überblick ==
 +
* Fluid Form erstellen
 
=== Formular Felder im Fluid Template ===
 
=== Formular Felder im Fluid Template ===
 
==== Form Tag ====
 
==== Form Tag ====
Zeile 7: Zeile 11:
 
</f:form>
 
</f:form>
 
</pre>
 
</pre>
Beispiel ToDo
+
Beispiel
 +
<pre>
 +
<f:form action="create" object="{newProject}">
 +
Projektname: <f:form.textbox property="name" />
 +
<f:form.submit value="Speichern" />
 +
</f:form>
 +
</pre>
 +
Das Controller Attribut benötigt man nur dann, wenn der Controller der die Daten auswerten soll nicht zum aktuellen View gehört.
 
==== Name Attribute ====
 
==== Name Attribute ====
 
Das '''name-Attribut''' wird automatisch für das Plugin passend umgewandelt.
 
Das '''name-Attribut''' wird automatisch für das Plugin passend umgewandelt.

Version vom 15. Dezember 2014, 11:14 Uhr

Links

http://docs.typo3.org/typo3cms/ExtbaseGuide/Fluid/ViewHelper/Form/Index.html

Überblick

  • Fluid Form erstellen

Formular Felder im Fluid Template

Form Tag

<f:form action="BestimmteFormAction" controller="BestimmterControllerName" extension="AndererExtensionName" enctype="multipart/form-data">
Form-Felder
</f:form>

Beispiel

<f:form action="create" object="{newProject}">
 Projektname: <f:form.textbox property="name" />
 <f:form.submit value="Speichern" />
</f:form>

Das Controller Attribut benötigt man nur dann, wenn der Controller der die Daten auswerten soll nicht zum aktuellen View gehört.

Name Attribute

Das name-Attribut wird automatisch für das Plugin passend umgewandelt.

<f:form.textfield name="myField" /> 

wird zu

<input type="text" name="tx_registierung_pi1[myField]" />

Sendet das Formular nun z.B. an einen Controller: showAction, stehen die Werte als Argumente zur Verfügung:

public function showAction() {
  $args = $this->request->getArguments();
  echo $args['myField];
}

Extbase vergleicht dabei zusätzlich automatisch die Felder aus dem Formular mit dem Model validiert automatisch.