Zum Inhalt springen

Bei Fehler innerhalb der createAction zurück zur newAction?

Erstellt am 28. September 2011 · 1 Antwort · letzte Antwort am 11. Oktober 2011

Tags: Frage

typonewbe ·

Hallo,

hab nen kleines Problem beim Abfangen von Fehlern die innerhalb einer Action auftreten.

In meiner Extension stelle ich ein upload zur Verfügung dieser wurde auch mit Validatoren versehen um die gröbsten Fehler abzufangen.

Nun ist es so, das für jede Datei die hochgeladen ein neuer Ordner (Datum+username) angelegt wird. Was ja alles erstmal funktioniert.

Was aber wenn der Ordner nicht angelegt werden kann egal welche Gründe (Berechtigungsprob, Dateifehler,etc.)? Ich würde dann gern den Benutzer zurück zum New Formular schicken Felder natürlich Vorbelegt mit einer Anständigen Fehlermeldung.

Bin mir sicher es würde reichen wenn ich einen redirect mit action Controller und argumenten mache aber wie schicke ich die richtige Fehlermeldung mit?

Kann man den ErrorHandler irgendwie in der Action Ansprechen damit dann im View die Fehlermeldung steht?

Danke schon mal im Voraus

Gruß typonewbe

freshman17 ·

Für solche Fälle kannst du einen eigenen Validator erstellen, dort dein Prüfung machen und falls Fehler auftretten, diese an Flashmessages füllen

Das machst in die PHP-Doc deiner Action

@validate $myObject Tx_MyExt_Domain_Validator_Foo

Das Gerüst für deinen Validator

class Tx_MyExt_Domain_Validator_Foo extends Tx_Extbase_Validation_Validator_AbstractValidator {

	/**
	 * isValid
	 *
	 * @param unknown_type $isValid
	 * @return boolean
	 */
	public function isValid($isValid) {
	  /* deine Logik */
	  if (TRUE) {
	    $this->addError('blub', 1306748437);
	  }
	}
}

Fehler sollte dann im FashMessageContainer landen.