gustavohrm
(Gustavohenriquerm)
March 15, 2012, 5:15pm
1
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'));
?>
Newerton
(Newerton Araujo)
March 15, 2012, 6:12pm
2
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'=>''));
gustavohrm
(Gustavohenriquerm)
March 15, 2012, 6:23pm
3
Newerton:
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);
?>