我在我的Yii webapp中制作了“变速箱”-dropDownList,一切都很完美,它在DB中存储了下一个值(1 =>手动,2 =>手动 - 自动(tiptronick),3 =>自动) ,现在我将它显示在模板(view.php)中,带有如此不漂亮的if-block:
齿轮箱: “ if($ model-> gearbox == 1){ echo'Manual'; } elseif($ model-> gearbox == 2){ echo'Manual-Automat'; } else { echo'Automat'; } “
请告诉我,我应该在控制器中准备这些数据吗?如果有可能,你能告诉我,它是怎么做的。
答案 0 :(得分:1)
另一种选择是使用virtual attribute将其添加到您的模型中,如下所示:
public function getGearboxName() {
if ($model->gearbox == 1) {
return 'Manual';
} elseif($model->gearbox == 2) {
return 'Manual-Automat';
} else {
return 'Automat';
}
}
这样您就可以通过模型中的gearboxName
属性访问该值:
echo $model->gearboxName;
答案 1 :(得分:0)
我认为在这个简单的情况下没有太多事情要做,但你可以在你的控制器中准备它:
<强>控制器:强>
if ($model->gearbox == 1) {
$gearbox = 'Manual';
} elseif($model->gearbox == 2) {
$gearbox = 'Manual-Automat';
} else {
$gearbox = 'Automat';
}
$this->render('view',array('gearbox'=>$gearbox))
查看:强>
echo $gearbox;