我有员工模型,控制器和视图。 Employee表包含FirstName,MiddleName,LastName等。
现在我想在yii2下拉列表中一起显示Employee FirstName和LastName。怎么做?
答案 0 :(得分:0)
下拉列表需要将项目作为数组。只需将第一个,中间名和姓氏连接起来,将其添加到数组中并将其传递给下拉方法。
$names = [trim($employee->firstName . ' ' . $employee->middleName . ' ' . $employee->lastName)];
echo dropDownList('full-name', null, $names);
或者您可以为Employee定义fullName方法并使用它。
内部员工类
public function getFullName() {
return trim($this->firstName . ' ' . $this->middleName . ' ' . $this->lastName);
}
用法
$names = [$employee->fullName];
答案 1 :(得分:0)
您可以使用ArrayHelper
。首先导入ArrayHelper
课程,如下所示。
use yii\helpers\ArrayHelper;
假设您的变量名称为$model
。使用id
和first_name
映射last_name
,如下所示。
$data=ArrayHelper::map($model,'id',function($model){ return $model->first_name.' '.$model->last_name;});
下拉代码
<?php echo $form->field($model, 'user_id')->dropDownList($data); ?>