yii2 列表数据从 yii1.x 转换
yii2 listdata convert from yii1.x
如何将以下内容转换为 yii2
$dependency = new CDbCacheDependency('SELECT count(*) FROM job_title');
$jobTitle = JobTitle ::model()->cache(CACHE_TIMEOUT,$dependency)->findAll($array);
$jobTitleList = CHtml::listData($jobTitle, 'job_title_id','desc');
return $jobTitleList;
我的以下代码不起作用。
use yii\db\ActiveRecord;
use yii\helpers\ArrayHelper;
use yii\helpers\Html;
$items = array();
foreach (Jobsprocess::find()->where($array)->all() as $value) {
$items[$value->process_id] = $value->jobsprocess;
}
return $items;
Yii 2 中 CHtml::listData
的替换为 ArrayHelper::map()
示例:
$jobTitleList = ArrayHelper::map($jobTitle, 'job_title_id', 'desc');
在 official docs 阅读更多内容。
如果我对你的问题理解正确,你需要以下 Yii 2 格式的代码。
Yii 1:
$dependency = new CDbCacheDependency('SELECT count(*) FROM job_title');
$jobTitle = JobTitle ::model()->cache(CACHE_TIMEOUT,$dependency)->findAll($array);
$jobTitleList = CHtml::listData($jobTitle, 'job_title_id','desc');
return $jobTitleList;
Yii 2:
use yii\helpers\ArrayHelper;
use app\models\JobTitle;
$jobTitleList = ArrayHelper::map(JobTitle::find()->where($array)->all(), 'job_title_id','desc');
return $jobTitleList;
但我不知道您在 Yii 2
代码中使用 Jobsprocess
模型做什么。因为,在 Yii 1
格式中您还没有使用该模型。
如何将以下内容转换为 yii2
$dependency = new CDbCacheDependency('SELECT count(*) FROM job_title');
$jobTitle = JobTitle ::model()->cache(CACHE_TIMEOUT,$dependency)->findAll($array);
$jobTitleList = CHtml::listData($jobTitle, 'job_title_id','desc');
return $jobTitleList;
我的以下代码不起作用。
use yii\db\ActiveRecord;
use yii\helpers\ArrayHelper;
use yii\helpers\Html;
$items = array();
foreach (Jobsprocess::find()->where($array)->all() as $value) {
$items[$value->process_id] = $value->jobsprocess;
}
return $items;
Yii 2 中 CHtml::listData
的替换为 ArrayHelper::map()
示例:
$jobTitleList = ArrayHelper::map($jobTitle, 'job_title_id', 'desc');
在 official docs 阅读更多内容。
如果我对你的问题理解正确,你需要以下 Yii 2 格式的代码。
Yii 1:
$dependency = new CDbCacheDependency('SELECT count(*) FROM job_title');
$jobTitle = JobTitle ::model()->cache(CACHE_TIMEOUT,$dependency)->findAll($array);
$jobTitleList = CHtml::listData($jobTitle, 'job_title_id','desc');
return $jobTitleList;
Yii 2:
use yii\helpers\ArrayHelper;
use app\models\JobTitle;
$jobTitleList = ArrayHelper::map(JobTitle::find()->where($array)->all(), 'job_title_id','desc');
return $jobTitleList;
但我不知道您在 Yii 2
代码中使用 Jobsprocess
模型做什么。因为,在 Yii 1
格式中您还没有使用该模型。