Laravel 7 使'Integer'当输入为空时显示验证消息,即使它不是必需的



当输入为null时,Laravel弹出整数验证消息

<<p>视图/strong>
<div class="form-group">
<label>Sipërfaqja(Metra Katror)</label>
<input type="number" name="area" value="{{old('area')}}"
class="form-control form-control-border @error('area') is-invalid @enderror "
placeholder="220">
@if($errors->has('area'))
<div style="color: red">{{ $errors->first('area') }}</div>
@endif
</div>

控制器

$rules = [
'area' => 'integer',
];
$messages = array(
'area.integer' => 'Area should be integer value',
);

我留下输入空,但这条消息出现在前端区域应该是整数值.

如同Laravel doc:

默认情况下,Laravel包含trimstring和ConvertEmptyStringsToNull中间件在应用程序的全局中间件堆栈。在堆栈中列出这些中间件App Http 内核类。正因为如此,你经常需要做标记你的"optional"请求字段为可空,如果您不希望验证器将空值视为无效。

所以,你的代码应该是这样的:
$messages = array(
'area.integer' => 'nullable|integer',
);

相关内容

  • 没有找到相关文章

最新更新