Select or Dropdown list from CActiveRecord in Yii

yAnTar picture yAnTar · Jul 4, 2012 · Viewed 10.3k times · Source

I have table types and i want to build selectbox with all values from this table In my controller i wrote this code

$allRegistrationTypes = RegistrationType::model()->findAll();
$this->render('index', array('allRegistrationTypes' => $allRegistrationTypes))

How build selectbox in view file ?

Answer

Afnan Bashir picture Afnan Bashir · Jul 4, 2012

Well then its pretty simple all you need to do is first create List Data like

CHtml::ListData(allRegistrationTypes,'value you want to pass when item is selected','value you have to display');

for ex

typeList = CHtml::ListData(allRegistrationTypes,'id','type');

now remember both id and type are fields in table

now all you have to do is if you are using form then

<?php echo $form->dropDownList($model, 'type_id', $typeList, array('empty'=>'Select a tyoe')); ?>

and if you need multiple you can pass multiple => multiple in the array as htmlOptions