A typical Developer Blog
by Gordon Franke
Icon

Wie kann ich eingebettete Formulare oder einzelne Felder abhängig von einem Formularfeld verwenden?

Du hast ein Registrierungsformular mit einem Feld account_type und zwei eingebetteten Formularen Company und Address.

Du willst das eingebettete Company Formular entfernen, wenn das Feld account_type sfGuardUserProfile::TYPE_PRIVATE entspricht, andernfalls willst du das eingebettete Address Formular entfernen.

Die Lösung ist die bind Methode in deinem Formular zu überschreiben.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
  public function bind(array $taintedValues = null, array $taintedFiles = null)
  {
    // unset request param and validator
    if($taintedValues['account_type'] == sfGuardUserProfile::TYPE_PRIVATE)
    {
      unset(
        $taintedValues['Company'],
        $this->validatorSchema['Company']
      );
    }
    else
    {
      unset(
        $taintedValues['Address'],
        $this->validatorSchema['Address']
      );
    }
 
    parent::bind($taintedValues, $taintedFiles);
  }

Related posts:

  1. Wie kann ich alle Formular Pflichtfelder mit einem * kennzeichnen? Erstelle die Datei lib/gfFormHerlp.class.php 1 2 3 4 5 6...
  2. Wie kann man in symfony 1.3 einfach alle Formular Pflichtfelder kennzeichnen? Erstelle eine Funktion in deiner BaseForm Klasse 1 2 3...
  3. Wie kann ich die Anzahl der Datenbank Queries in meinem Unit Test überprüfen? 1 2 3 $manager = new sfDatabaseManager($configuration); $connection =...
  4. Wie kann ich ein symfony event aus dem doctrine model herraus aufrufen? 1 2 $dispatcher = sfProjectConfiguration::getActive()->getEventDispatcher(); $dispatcher->notify($event); ...
  5. Wechseln von Doctrine to Doctrine_Core mit einem Befehl Um deinen Code von Doctrine auf Doctrine_Core umzustellen kannst du...

Related posts brought to you by Yet Another Related Posts Plugin.

Author: Gordon Franke

Category: Uncategorized, doctrine, symfony

Tagged: , , , ,

Leave a Reply

CommentLuv Enabled