Ergebnis 1 bis 6 von 6

Thema: Haste Formular validieren

  1. #1
    Contao-Fan Avatar von Ainschy
    Registriert seit
    24.06.2009.
    Ort
    Wenden
    Beiträge
    796
    Partner-ID
    5666
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard Haste Formular validieren

    Moin,

    ich erstelle in einer eigenen Erweiterung mein Formular mittels Haste. Bei dem Versuch die Validierung mittels validateFormField Hook durchzuführen wurde diese nicht aufgerufen. In der Form.php finde ich den Hinweis auf addValidate, nur komme ich an dieser Stelle nicht weiter.

    Frage wie Validiere ich die Widgets unter Haste?

  2. #2
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    In der Doku gibts ein Beispiel. Schau einfach in die Form.md

    Gesendet von meinem SM-G935F mit Tapatalk
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  3. #3
    Contao-Fan Avatar von Ainschy
    Registriert seit
    24.06.2009.
    Ort
    Wenden
    Beiträge
    796
    Partner-ID
    5666
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Welche Stelle meinst du genau?

    Die in der Form.md finde ich kein passendes Beispiel.

    Wie muss der "save_callback" aufgebaut sein?

    Sollte die Validierung fehlschlagen muss das Formular mit Fehlermeldung neu aufgerufen werden.

  4. #4
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    https://github.com/codefog/contao-ha...s/Form/Form.md

    Es muss überhaupt kein save_callback etc. gebaut werden zumal ein save_callback ja nur fürs Backend zuständig ist. Haste Formular ist soviel ich weiß nur fürs Frontend gedacht. Im Backend gibt es ja eine eigene Validierung über das DCA bzw. rgxp
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  5. #5
    Contao-Fan Avatar von Ainschy
    Registriert seit
    24.06.2009.
    Ort
    Wenden
    Beiträge
    796
    Partner-ID
    5666
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Habs nun folgendermaßen gelöst:

    PHP-Code:
    $objForm->addValidator('email', function($varValue, \Widget $objWidgetForm $objForm){
        if ( 
    $varValue == 'xxx@yyy.zz' )
        {
            
    $objWidget->class 'error';
            
    $objWidget->addError('wrong Email Adress!');
        }
        return 
    $varValue;
    }); 

  6. #6
    Contao-Urgestein Avatar von Toflar
    Registriert seit
    15.06.2009.
    Beiträge
    4.467
    Partner-ID
    8667
    User beschenken
    Wunschliste

    Standard

    Der save_callback wird unterstützt und funktioniert genau gleich wie im Backend
    Aber dein Validator funktioniert genauso. Abkürzung wäre so gewesen:

    PHP-Code:
    $objForm->addValidator('email', function($varValue, \Widget $objWidgetForm $objForm){
        if (
    $varValue == 'xxx@yyy.zz') {
            throw new \
    Exception('wrong Email Adress!');
        }

        return 
    $varValue;
    }); 
    Oder eben direkt auf dem Feld:
    PHP-Code:
    $objForm->addFormField('email', [
        
    // Feldeinstellungen
        
    'save_callback' => [
            function(
    $value) {
                if (
    $value == 'xxx@yyy.zz') {
                    throw new \
    Exception('wrong Email Adress!');
                }
     
                return 
    $value;
            }
        ]
    ]); 
    Geändert von Toflar (28.05.2019 um 08:23 Uhr)
    Contao Core-Entwickler @terminal42 gmbh
    Wir sind Contao Premium-Partner!
    Für Individuallösungen kannst du uns gerne kontaktieren.
    PS: Heute schon getrakked?

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •