mirror of
https://github.com/yiisoft/yii2.git
synced 2025-11-02 21:41:19 +08:00
Fix #15526: Show valid aliases and options on invalid input in console application
This commit is contained in:
committed by
GitHub
parent
37d62c2509
commit
e7e72e2ff6
@ -9,8 +9,10 @@ Yii Framework 2 Change Log
|
||||
- Bug #17434: Fix regular expression illegal character; Repeated fix for Internet Explorer 11 AJAX redirect bug in case of 301 and 302 response codes (`XMLHttpRequest: Network Error 0x800c0008`) (kamarton)
|
||||
- Bug #16855: Ignore console commands that have no actions (alexeevdv)
|
||||
- Enh #16826: `appendTimestamp` support was added to `View` methods `registerCssFile()` and `registerJsFile()` (onmotion)
|
||||
- Enh #15526: Show valid aliases and options on invalid input in console application (samdark)
|
||||
- Bug #16671: Logging in `Connection::open()` was not respecting `Connection::$enableLogging` (samdark)
|
||||
|
||||
|
||||
2.0.26 September 03, 2019
|
||||
-------------------------
|
||||
|
||||
|
||||
@ -105,7 +105,18 @@ class Controller extends \yii\base\Controller
|
||||
if (array_key_exists($name, $optionAliases)) {
|
||||
$params[$optionAliases[$name]] = $value;
|
||||
} else {
|
||||
throw new Exception(Yii::t('yii', 'Unknown alias: -{name}', ['name' => $name]));
|
||||
$message = Yii::t('yii', 'Unknown alias: -{name}', ['name' => $name]);
|
||||
if (!empty($optionAliases)) {
|
||||
$aliasesAvailable = [];
|
||||
foreach ($optionAliases as $alias => $option) {
|
||||
$aliasesAvailable[] = '-' . $alias . ' (--' . $option . ')';
|
||||
}
|
||||
|
||||
$message .= '. ' . Yii::t('yii', 'Aliases available: {aliases}', [
|
||||
'aliases' => implode(', ', $aliasesAvailable)
|
||||
]);
|
||||
}
|
||||
throw new Exception($message);
|
||||
}
|
||||
}
|
||||
unset($params['_aliases']);
|
||||
@ -136,7 +147,12 @@ class Controller extends \yii\base\Controller
|
||||
unset($params[$kebabName]);
|
||||
}
|
||||
} elseif (!is_int($name)) {
|
||||
throw new Exception(Yii::t('yii', 'Unknown option: --{name}', ['name' => $name]));
|
||||
$message = Yii::t('yii', 'Unknown option: --{name}', ['name' => $name]);
|
||||
if (!empty($options)) {
|
||||
$message .= '. ' . Yii::t('yii', 'Options available: {options}', ['options' => '--' . implode(', --', $options)]);
|
||||
}
|
||||
|
||||
throw new Exception($message);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user