validate() Verständnis

Hi,

ich habe eine Frage zum Verständnis der validate() Methode.




	$model->setAttributes($taskData);

    	if($model->validate())

    	{

    	}



Hiermit wird überprüft ob die übergebenen Elemente des Arrays den Regeln aus rules entsprechen.

Wenn nicht, dann wird auf meiner view ein Fehler übergeben.

Was ist jedoch wenn ich ein Array von Models erstelle? Wie kann ich dann überprüfen welches Model einen Fehler wirft?

Wird die Schleife direkt abgebrochen wenn ein Fehler geworfen wird, oder kann ich yii mitteilen das er das ganze Array erst prüfen soll und die Fehler summieren soll?

Beispiel




    	foreach($_POST['Task'] as $taskData)

    	{

    		$model = new Task();

    		$model->setAttributes($taskData);

    		if($model->validate())

    		{

    			$models[] = $model;

    		}

    		else

    		{

    		}

    	}



Danke für eure Antworten!

die Fehlermeldungen fragst du für jedes model ab mit $model->getErrors()

wann du das machst, musst du alleine wissen :slight_smile:

Siehe auch http://www.yiiframework.com/doc/guide/1.1/de/form.table. Dort siehst du eine Logik, wie man den Fehlerstatus "aufsummiert".