我在Laravel上有一个表单需要由用户填写。但是不需要填写表单的所有字段。它们可以留空。但是,只要字段留空,即使它们在表单中填充了某些内容,下面的所有内容都会留空。
我基本上希望它只发送用户填写的内容。
答案 0 :(得分:0)
我希望我的问题是正确的,所以请试一试:你需要告诉验证者,通过添加相应的规则需要哪些字段。
$validator = Validator::make(
array('name' => 'Dayle'),
array('name' => 'required|min:5')
);
如果不需要字段,则不要指定规则,默认情况下它们是可选的。
$validator = Validator::make(
array('name' => 'Dayle'),
array('name' => 'min:5') // note that 'required' is missing here!
);
如果验证失败从未如此,您可以重定向并提供之前由用户输入的输入。
if ($validator->fails())
{
return Redirect::back()->withInput();
}
这很糟糕,字段会自动填充给定的输入。您可能希望查看validation和forms上的laracasts-episodes以供进一步参考。他们真的很棒。
答案 1 :(得分:0)
我希望我理解你的问题 这是在第一个空白后删除所有输入值的方法:
$input = Input::all();
$firstBlank = array_search('', $input);
if($firstBlank === false){
$firstBlankIndex = array_search($firstBlank, array_keys($input));
$input = array_slice($input, 0, $firstBlankIndex, true);
}
// use $input