FormRequest方法在L5.4中验证时忽略空字段

Cla*_*tta 1 php validation httprequest laravel laravel-5.4

我有这个规则的表格请求:

"password" => "confirmed"
Run Code Online (Sandbox Code Playgroud)

这个解决方案在L5.3中运行良好,因为规则本身有一个bug,如果你传递两个空字段,如

"password" => "",
"password_confirmation" => ""
Run Code Online (Sandbox Code Playgroud)

它们将被验证,因为它们都是空字符串("").即使这是一个错误,我猜,它在某种程度上是好的,因为我的应用程序在请求之后进行了其他检查,但是在L5.4中,每个空字段都被转换为仅由于新的中间件而单独null"confirmed"规则不再起作用.

我试过了:

"password" => "sometimes|confirmed"
Run Code Online (Sandbox Code Playgroud)

但它不起作用,因为密钥存在.

我的问题很简单:

是否有一个类似的验证规则,sometimes但它检查可空值?

我想保留中间件.