Laravel 5.1 中断了以前工作的控制台命令

Laravel 5.1 breaks previously working console command

我有一个用于创建新公司的命令行命令。在命令中,它使用 ask() 询问用户公司账单地址信息。其中一个字段 'address2' 是可选的,它过去在 Laravel 5.0 中工作得很好,而用户只需点击 return 将其留空。我已经阅读了新的 5.1 命令。我已将此命令重构为 Laravel 5.1 规格,但我不知道如何使用 ask() 函数来允许字段为空。我如何向用户询问可选地址字段?我已经提供了默认值,例如:

$address = $this->ask("address2", "n/a");

但我不能在不必要的 address2 字段中包含 'n/a' 或任何与此相关的内容。我希望它是空白的,但是,这样做:

$address = $this->ask("address2", "");

或者这个:

$address = $this->ask("address2", null);

导致此错误:"a value is required."

我卡住了。如何允许 Laravel 5.1 中的空白可选字段?

你可以按照

的方式做一些事情
$address2 = $this->askOptional('address2');

private function askOptional($question)
{
    $answer = $this->ask($question, '(empty)');
    return '(empty)' == $answer ? null : $answer;
}