refresh и setFlash

Привет

Есть форма которую юзер заполняет и при удачной валидации в контроллере происходит такой код


Yii::app()->user->setFlash('support_newtheme', Yii::t('good', 'support_newtheme'));

$this->refresh(); 

То есть задаем setFlash и сбрасываем все данные из формы

В форме есть такая конструкция


<?php if(Yii::app()->user->hasFlash('support_newtheme')): ?>

<div class="flash-success">

    <?=Yii::app()->user->getFlash('support_newtheme');?>

</div>

<?php endif; ?>

То есть если Flash задан то выводим его

В итоге форма сбрасывается а flash не выводится.

Как быть?

Если refresh() убрать то норм выводится но форма не сбрасывается, это не верно

Не туда вставляешь, покажи повыше и пониже код контроллера


$modelMsg = new SupportMsg;

        $modelMsg->setScenario('newmes');


        $this->performAjaxValidation($modelMsg);


        if(isset($_POST['SupportMsg'])){

             $modelMsg->attributes=$_POST['SupportMsg'];

             $modelMsg->theme_id = $model->id;


             if($modelMsg->validate() && $model->status != 'close'){

                //если админ то делаем из него оператора

                $isOperator = Yii::app()->user->status == 10? true: false;

                $res = SupportMsg::createNewMsg($modelMsg->theme_id, $modelMsg->text, Yii::app()->user->user_id, $isOperator);


                if($res == true){

                    Yii::app()->user->setFlash('support_newmes', Yii::t('good', 'support_newmes'));


                    $this->refresh();

                }

             }else

                Yii::app()->user->setFlash('error_valid', true);

        }

	$this->render('view',array(

            'modelMsg'=>$modelMsg,

		));




как то странно, через раз выводится

Причем когда не выводится if(Yii::app()->user->hasFlash('support_newmes)) выдает false

тоесть Yii::app()->user->setFlash(‘support_newmes’, Yii::t(‘good’, ‘support_newmes’)); не срабатывает или удаляется

Нашел зависимость

У меня в форме есть валидация полей через Ajax с помощью стандартного CActiveForm

Дак вот есть валидация полей проходит и они загораются светлым цветом, то после нажатия кнопки сообщение вылазит, а если валидация не прошла то не вылезет

Не могу понять зависимость между ними

UPD: если отключить аякс валидацию то сообщение выводится нормально

Покажи performAjaxValidation