activeDropDownList sem valor ao editar

Estou enfrentando um pequeno problema ao editar um registro, os campos activeDropDownList não ficam com o valor quando peço para editar, o que faz eu ter que re-preencher vários campos do meu formulário.

O código está assim:




<?php

	echo CHtml::activeDropDownList($model,'id_usuario',

	CHtml::listData(Usuarios::model()->findAll(array('order'=>'nome_usuario')),

	'id_usuario','nome_usuario'),array('empty'=>'','id'=>'id_usuario'));

?>



Gustavo,

Tentar mudar para assim:




$usuarios = Usuarios::model()->findAll(array('order'=>'nome_usuario'));

$usuarios = CHtml::listData($usuarios, 'id_usuario', 'nome_usuario');

		

echo CHtml::activeDropDownList($model,'id_usuario', $usuarios, array('empty'=>''));



Newerton, fiz essa alteração, mas continua sem selecionar o valor que já tinha no campo… aparece vazio…

Consegui aqui, fiz o seguinte:

acrescentei:


$model->isNewRecord ? $valor = array('empty'=>'') : $valor = array('selected'=>$model->id_usuario);

e chamei assim:


<?php

        $model->isNewRecord ? $valor = array('empty'=>'') : $valor = array('selected'=>$model->id_usuario);

        echo CHtml::activeDropDownList($model,'id_usuario',

        CHtml::listData(Usuarios::model()->findAll(array('order'=>'nome_usuario')),

        'id_usuario','nome_usuario'),$valor);

?>