Comportamento Non Previsto Validatore Numerical

Ho un campo che deve essere per forza un numero intero

La sua rule è questa




array('ganci', 'numerical', 'integerOnly'=>true),



Alcuni utenti, con telefonini non bene definiti, quando inseriscono un numero, che so … 117, in realtà inviano "117<Spazio>"

a quel punto il sistema dice all’utente “N° Di Ganci deve essere un numero.” ma, insomma, pensavo che almeno un trim automatico lo facesse …

Sbaglio qualcosa io? Devo per forza fare qualcosa del tipo




if(isset($_POST['VerificheDestinazioni']))

		{

			$model->attributes=$_POST['VerificheDestinazioni'];

			$model->ganci = trim($_POST['VerificheDestinazioni']["ganci"]);



… per pulire manualmente l’input ?

Pare non esserci una trim automatica!

Però io non la metterei nel controller ma nel beforeSave e beforeValidate, se poi prevedi l’obbligo di avere javascript attivato potresti fare uno script che controlla tutti i campi input prima di fare submit, con non troppo codice ed un solo evento ti sistemi tutti i campi di tutta l’app.

giusto, il beforeValidate è il posto concettualmente più corretto.

Ho aperto una issue sul yii 1 al riguardo.