在Laravel中,如果我为所有整数设置了默认值0,如果请求为空,如何才能使用缺省值?Laravel - 如果输入为空,则使用默认值
我已经试过:
$property->bedrooms = $request->input('bedrooms', 0);
但它仍然只是尝试将其设置为空,抛出一个错误,因为我假定这只是因为如果值不存在的。
当然,我可以去:
if($request->bedrooms){
$property->bedrooms = $request->bedrooms;
}else{
$property->bedrooms = 0;
}
...但似乎相当冗长。
我错过了一个整洁的解决方案吗?默认值是无用的,如果你无论如何每次都需要使用if/else。
工作,如果你不想删除' ConvertEmptyStringsToNull'中间件,你可以使用单行三元语句,如:'$ property-> bedrooms = $ request-> bedrooms?:0;' –
Cheers Aaron!我想Rob's是技术上最正确的答案,但这种简写也是真正的方便。 – MitchEff
是的,我同意!只是一个诡计,如果你需要在你的应用程序的其他部分使用该中间件:) –