diff --git a/extensions/gii/assets/gii.js b/extensions/gii/assets/gii.js
index 8ea5befa05..dbbd915c87 100644
--- a/extensions/gii/assets/gii.js
+++ b/extensions/gii/assets/gii.js
@@ -115,9 +115,9 @@ yii.gii = (function ($) {
$('#model-generator .field-generator-modelclass').toggle($(this).val().indexOf('*') == -1);
}).change();
- // CRUD generator: hide messageCategory when I18N is disabled
- $('#crud-generator #generator-enablei18n').change(function () {
- $('#crud-generator .field-generator-messagecategory').toggle($(this).is(':checked'));
+ // hide message category when I18N is disabled
+ $('form #generator-enablei18n').change(function () {
+ $('form .field-generator-messagecategory').toggle($(this).is(':checked'));
}).change();
// hide Generate button if any input is changed
diff --git a/extensions/gii/generators/model/Generator.php b/extensions/gii/generators/model/Generator.php
index 7f030f1475..7e753a1a34 100644
--- a/extensions/gii/generators/model/Generator.php
+++ b/extensions/gii/generators/model/Generator.php
@@ -64,6 +64,8 @@ class Generator extends \yii\gii\Generator
[['modelClass'], 'validateModelClass', 'skipOnEmpty' => false],
[['baseClass'], 'validateClass', 'params' => ['extends' => ActiveRecord::className()]],
[['generateRelations', 'generateLabelsFromComments'], 'boolean'],
+ [['enableI18N'], 'boolean'],
+ [['messageCategory'], 'validateMessageCategory', 'skipOnEmpty' => false],
]);
}
@@ -72,7 +74,7 @@ class Generator extends \yii\gii\Generator
*/
public function attributeLabels()
{
- return [
+ return array_merge(parent::attributeLabels(), [
'ns' => 'Namespace',
'db' => 'Database Connection ID',
'tableName' => 'Table Name',
@@ -80,7 +82,7 @@ class Generator extends \yii\gii\Generator
'baseClass' => 'Base Class',
'generateRelations' => 'Generate Relations',
'generateLabelsFromComments' => 'Generate Labels from DB Comments',
- ];
+ ]);
}
/**
@@ -88,7 +90,7 @@ class Generator extends \yii\gii\Generator
*/
public function hints()
{
- return [
+ return array_merge(parent::hints(), [
'ns' => 'This is the namespace of the ActiveRecord class to be generated, e.g., app\models',
'db' => 'This is the ID of the DB application component.',
'tableName' => 'This is the name of the DB table that the new ActiveRecord class is associated with, e.g. tbl_post.
@@ -107,7 +109,7 @@ class Generator extends \yii\gii\Generator
you may want to uncheck this option to accelerate the code generation process.',
'generateLabelsFromComments' => 'This indicates whether the generator should generate attribute labels
by using the comments of the corresponding DB columns.',
- ];
+ ]);
}
/**
@@ -140,7 +142,7 @@ class Generator extends \yii\gii\Generator
*/
public function stickyAttributes()
{
- return ['ns', 'db', 'baseClass', 'generateRelations', 'generateLabelsFromComments'];
+ return array_merge(parent::stickyAttributes(), ['ns', 'db', 'baseClass', 'generateRelations', 'generateLabelsFromComments']);
}
/**
diff --git a/extensions/gii/generators/model/default/model.php b/extensions/gii/generators/model/default/model.php
index ae84b7055c..40902d5518 100644
--- a/extensions/gii/generators/model/default/model.php
+++ b/extensions/gii/generators/model/default/model.php
@@ -55,7 +55,7 @@ class = $className ?> extends = '\\' . ltrim($generator->baseClass, '\\') .
{
return [
$label): ?>
- = "'$name' => '" . addslashes($label) . "',\n" ?>
+ = "'$name' => " . $generator->generateString($label) . ",\n" ?>
];
}
diff --git a/extensions/gii/generators/model/form.php b/extensions/gii/generators/model/form.php
index ddc40f8be4..8f53b01eb2 100644
--- a/extensions/gii/generators/model/form.php
+++ b/extensions/gii/generators/model/form.php
@@ -12,3 +12,5 @@ echo $form->field($generator, 'baseClass');
echo $form->field($generator, 'db');
echo $form->field($generator, 'generateRelations')->checkbox();
echo $form->field($generator, 'generateLabelsFromComments')->checkbox();
+echo $form->field($generator, 'enableI18N')->checkbox();
+echo $form->field($generator, 'messageCategory');