From d8c5595458f2cbd77689522d423f48251aecd4f9 Mon Sep 17 00:00:00 2001 From: Carsten Brandt Date: Wed, 4 Jun 2014 09:53:09 +0200 Subject: [PATCH] refactored gii enum dropdown generator PR #3676 --- extensions/gii/generators/crud/Generator.php | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/extensions/gii/generators/crud/Generator.php b/extensions/gii/generators/crud/Generator.php index 3874900..8e5b23c 100644 --- a/extensions/gii/generators/crud/Generator.php +++ b/extensions/gii/generators/crud/Generator.php @@ -13,6 +13,7 @@ use yii\db\BaseActiveRecord; use yii\db\Schema; use yii\gii\CodeFile; use yii\helpers\Inflector; +use yii\helpers\VarDumper; use yii\web\Controller; /** @@ -248,11 +249,12 @@ class Generator extends \yii\gii\Generator $input = 'textInput'; } if (is_array($column->enumValues) && count($column->enumValues) > 0) { - $dropDownOptions = "'' => '', "; + $dropDownOptions = []; foreach ($column->enumValues as $enumValue) { - $dropDownOptions .= "'".$enumValue."' => '".$enumValue."', "; + $dropDownOptions[$enumValue] = Inflector::humanize($enumValue); } - return "\$form->field(\$model, '$attribute')->dropDownList([".$dropDownOptions."])"; + return "\$form->field(\$model, '$attribute')->dropDownList(" + . preg_replace("/\n\s*/", ' ', VarDumper::export($dropDownOptions)).", ['prompt' => ''])"; } else if ($column->phpType !== 'string' || $column->size === null) { return "\$form->field(\$model, '$attribute')->$input()"; } else {