是否可以将 cgridview 中的内容显示到 yii 的下拉列表中?

is it possible to display content from cgridview to dropdown in yii?

我已经修改了我的模型,以便每个用户在 cgridview 中显示的数据都是唯一的,具体取决于帐户类型...

但是我需要从另一个模型创建一个表单,我可以通过下拉列表从 cgridview 获取数据...

我一开始用的是这个代码...

<?php 
$this->widget('ext.select2.ESelect2',array(
  'model'=>$model,
  'attribute'=>'pr_id',
  'data'=>$model->searchPatient(),//function to provide data
  // or
  //'data'=>CHtml::listData(PatientRecord::model()->findAll(), 'id', 'first_name')
);  
?>

但它 returns PatientRecord 模型的所有内容,我在计划从 cgridview 检索内容之前尝试使用条件...

$doctor= Yii::app()->user->id;
CHtml::listData(PatientRecord::model()->findAll( array(
                                'condition'=>'doctor_id=:doctor_id', 
                                'params' => array(':doctor_id' => $doctor)
                             )
                    );), 'id', 'first_name')

它没有错误,但也没有在下拉列表中显示任何内容...

有什么建议吗?

我认为问题出在您的模型代码中的 ;),试试这个:

   $doctor= Yii::app()->user->id;
   CHtml::listData(PatientRecord::model()->findAll( array(
                                    'condition'=>'doctor_id=:doctor_id', 
                                    'params' => array(':doctor_id' => $doctor)
                                 )
                        ), 'id', 'first_name');

您应该始终在本地环境中启用错误日志记录,这将有助于您发现代码中的任何错误。这里是关于如何启用错误记录的 link

希望对您有所帮助:)