1

我在 Laravel 上有一个表格,需要用户填写。但表格的所有字段都不需要填写。它们可以留空。但是,一旦将某个字段留空,则该字段下方的所有内容都会留空,即使他们在表格下方填写了一些内容。

我基本上希望它只发送用户填写的内容。

4

2 回答 2

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
于 2015-02-02T15:18:45.600 回答
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();
}

这很麻烦,这些字段会自动填充给定的输入。您可能想查看有关验证表单的 laracasts-episodes 以供进一步参考。他们真的很好。

于 2015-02-02T14:15:48.113 回答