Php Yii中的下拉列表?
在我的查看页面中Php Yii中的下拉列表?,php,yii,Php,Yii,在我的查看页面中 $cpfTabledropdown = ManageConfiguration::getModulesetting(); echo $form->dropdownList($useraccount, 'skill_type', $cpfTabledropdown, array('class' => 'form-control', 'prompt' => 'Select SKill Type', 'disabled' => $useracc
$cpfTabledropdown = ManageConfiguration::getModulesetting();
echo $form->dropdownList($useraccount, 'skill_type', $cpfTabledropdown, array('class' => 'form-control', 'prompt' => 'Select SKill Type', 'disabled' => $useraccount->id_type == 3 ? false : true));
在我的模型编码中:
public static function getModulesetting() {
$models = HrmoduleSettings::model()->findAll('type="6"');
return CHtml::listData($models, 'id', 'name');
}
现在我想用名称concat返回listdata,使用列subcat返回一些静态数据,如何在yii中用返回名称值concat静态数据,如下面的PHP编码
我想用YII显示Dropdownlist数据,如下面的PHP编码。它的PHP编码工作正常,但我不知道如何用YII编写。是否可以用YII编写下面的PHP编码
<select name ="UserAccount[skill_type]">
<?php
foreach ($cpfTabledropdown as $models) {
if ($models->subcat_type == 1)
{
$cate = "Skilled";
}
else {
$cate = "Unskilled";
}
?>
<option value ="<?php echo $models->id; ?>"><?php echo $cate . " " . $models->name; ?></option>
<?php
}
?>
</select>
这样做:
public static function getModulesetting() {
$models = HrmoduleSettings::model()->findAll('type="6"');
return CHtml::listData($models, 'id',
function($models) {
$cate = "What Ever"; // $cate content
return $cate . ' ' . $models->name;
});
}
这样做:
public static function getModulesetting() {
$models = HrmoduleSettings::model()->findAll('type="6"');
return CHtml::listData($models, 'id',
function($models) {
$cate = "What Ever"; // $cate content
return $cate . ' ' . $models->name;
});
}
您可以在HrmoduleSettings
类中创建一个getter,这样就可以避免在视图中添加与数据相关的代码
在hr模块设置
类中添加以下方法:
public function getNameWithCategory()
{
if ($this->subcat_type == 1)
return "Skilled " . $this->name;
else
return "Unskilled " . $this->name;
}
现在,您必须对CHtml::listData()
调用进行一些更改:
CHtml::listData($models, 'id', 'nameWithCategory');
就这样 您可以在HrmoduleSettings
类中创建一个getter,这样就可以避免在视图中添加与数据相关的代码
在hr模块设置
类中添加以下方法:
public function getNameWithCategory()
{
if ($this->subcat_type == 1)
return "Skilled " . $this->name;
else
return "Unskilled " . $this->name;
}
现在,您必须对CHtml::listData()
调用进行一些更改:
CHtml::listData($models, 'id', 'nameWithCategory');
就这样 为什么不创建一个新版本的getModuleSetting函数来实现这一点?为什么不创建一个新版本的getModuleSetting函数来实现这一点?