Cactiverecordbehaviour->Beforesave(): Come Si 'aggancia' Ad Un Model?

Ho creato il file components\SaveUserIdBehavior.php




<?php

class SaveUserIdBehavior extends CActiveRecordBehavior

{

    protected function beforeSave($event)

    {

       

        if(null !== Yii::app()->user)

           $id=Yii::app()->user->id;

        else

            $id=-1;

        

        if($this->isNewRecord) {

            $this->create_user_id=$id;

        }

        

        $this->update_user_id=$id;

        

    }

}



quindi ho aggiunto quanto segue al file models/User.php





	public function behaviors()

	{

		return array(

			'SaveUserId'=>array(

	            'class'=>'SaveUserIdBehavior',

	        ),


		);

	}



Il problema è che in fase di salvataggio di uno user, salvataggio che va a buon fine, i campi in questione non vengono valorizzati.

Mi rispondo da solo: ASINO ! il metodo beforeSave deve essere pubblico …

Non e proprio da solo… la risposta te la data Keith nell post inglese

http://www.yiiframework.com/forum/index.php/topic/50450-

Appunto quasi corretto: ci sono davvero arrivato da solo, poi anche l’utente sul forum inglese mi ha segnalato la cosa. Sorry per il malinteso [ed anche per il cross-post, non è certo mia abitudine farlo]