Extbase - Formulare validieren: Unterschied zwischen den Versionen

Aus Wikizone
Wechseln zu: Navigation, Suche
Zeile 5: Zeile 5:
  
 
http://www.derhansen.de/2013/05/typo3-extbase-own-validators-and-multi.html
 
http://www.derhansen.de/2013/05/typo3-extbase-own-validators-and-multi.html
 +
 +
Domänenobjekte werden nur '''im Controller''' validiert. Mittelfristig soll es eine zweite Validierung beim Speichern der Daten geben. Gibt es einen Fehler bei der Validierung wird im Controller die errorAction() aufgerufen.
 +
 
==Quickstart==
 
==Quickstart==
Wird ein Model über das Frontend in einer newAction erstellt, so erfolgt die Validierung anhand der '''PHP Annotations im jeweiligen Model''' (typo3conf/ext/extension/Classes/Model/Beispiel.php), zum  
+
Es gibt mehrere Arten zu Validieren:
 +
 
 +
===1. Validierung in den Annotations des Models.===
 +
Reicht aus wenn die Domänenobjekte einzeln Validiert werden können. Wird ein Model über das Frontend in einer newAction erstellt, so erfolgt die Validierung anhand der '''PHP Annotations im jeweiligen Model''' (typo3conf/ext/extension/Classes/Model/Beispiel.php), zum  
  
 
Beispiel so:
 
Beispiel so:
Zeile 14: Zeile 20:
 
  *
 
  *
 
  * @var string
 
  * @var string
  * @validate NotEmpty
+
  * @validate NotEmpty, StringLength(minimum = 1, maximum = 80)
 
  */
 
  */
 
  protected $perName = '';
 
  protected $perName = '';
 
</syntaxhighlight>
 
</syntaxhighlight>
 
Über das “@validate NotEmpty” wird sichergestellt, dass dieser Wert nicht leer sein darf.
 
Über das “@validate NotEmpty” wird sichergestellt, dass dieser Wert nicht leer sein darf.

Version vom 29. Juni 2015, 11:57 Uhr

Das Extbase Validator Objekt

https://typo3.org/api/typo3cms/namespace_t_y_p_o3_1_1_c_m_s_1_1_extbase_1_1_validation_1_1_validator.html

http://www.typo3lexikon.de/typo3-tutorials/extensions/fluid/validators.html

http://www.derhansen.de/2013/05/typo3-extbase-own-validators-and-multi.html

Domänenobjekte werden nur im Controller validiert. Mittelfristig soll es eine zweite Validierung beim Speichern der Daten geben. Gibt es einen Fehler bei der Validierung wird im Controller die errorAction() aufgerufen.

Quickstart

Es gibt mehrere Arten zu Validieren:

1. Validierung in den Annotations des Models.

Reicht aus wenn die Domänenobjekte einzeln Validiert werden können. Wird ein Model über das Frontend in einer newAction erstellt, so erfolgt die Validierung anhand der PHP Annotations im jeweiligen Model (typo3conf/ext/extension/Classes/Model/Beispiel.php), zum

Beispiel so:

/**
 * perName
 *
 * @var string
 * @validate NotEmpty, StringLength(minimum = 1, maximum = 80)
 */
 protected $perName = '';

Über das “@validate NotEmpty” wird sichergestellt, dass dieser Wert nicht leer sein darf.