Laravel select 字段验证
Laravel select field validation
我目前正在构建一个功能,用户可以从 select 框中 select 一个选项,一旦一个项目被 selected 你可以点击一个按钮点击我的端点提交并存储它。
但是,如果我什么都不 select 单击按钮,它只会在同一端点上点击 404 页面。
Blade
下面包含 select 框和按钮的 blade 语法。
<div class="row align-items-center">
<div class="col-md">
<small class="text-success">
please select one of the teams below to store your preference.
</small>
{!! Form::open(['route' => ['team.create.link', $team->id],'method' => 'post', 'class' => 'needs-validation','novalidate', null]) !!}
{!! Form::select('teams[]', $teams, '', ['class' => 'custom-select', 'multiple'], ['required']) !!}
<button class="btn btn-primary btn-sm mt-3 float-right">
<i class="fas fa-fw fa-plus-circle mr-2"></i>
Add</button>
{!! Form::close() !!}
</div>
</div>
方法
以下是用于将新输入存储在数据透视表中的方法 table。
public function link(string $teamId)
{
$team= Team::findOrFail($teamId);
$links = Input::get('teams');
$link = Team::findOrFail($links);
$team->links()->attach($link);
session()->flash('success', 'Link Added.');
return back();
}
帮助
我该如何修改它才能使按钮无法被点击,并且如果某个选项未 selected,则 returns 出现必需的错误?我试过将 ['required'] 添加到 form::select 但我没有成功。
任何人都可以把我推向正确的方向吗?
您可以使用 $this->validate
验证您的请求
use Illuminate\Http\Request;
public function link(Request $reqeust, string $teamId)
{
$request->validate([
'teams' => 'required',
]);
$team = Team::findOrFail($teamId);
$links = Input::get('teams');
$link = Team::findOrFail($links);
$team->links()->attach($link);
session()->flash('success', 'Link Added.');
return back();
}
查看 Laravel Validation
的官方文档
我目前正在构建一个功能,用户可以从 select 框中 select 一个选项,一旦一个项目被 selected 你可以点击一个按钮点击我的端点提交并存储它。
但是,如果我什么都不 select 单击按钮,它只会在同一端点上点击 404 页面。
Blade
下面包含 select 框和按钮的 blade 语法。
<div class="row align-items-center">
<div class="col-md">
<small class="text-success">
please select one of the teams below to store your preference.
</small>
{!! Form::open(['route' => ['team.create.link', $team->id],'method' => 'post', 'class' => 'needs-validation','novalidate', null]) !!}
{!! Form::select('teams[]', $teams, '', ['class' => 'custom-select', 'multiple'], ['required']) !!}
<button class="btn btn-primary btn-sm mt-3 float-right">
<i class="fas fa-fw fa-plus-circle mr-2"></i>
Add</button>
{!! Form::close() !!}
</div>
</div>
方法
以下是用于将新输入存储在数据透视表中的方法 table。
public function link(string $teamId)
{
$team= Team::findOrFail($teamId);
$links = Input::get('teams');
$link = Team::findOrFail($links);
$team->links()->attach($link);
session()->flash('success', 'Link Added.');
return back();
}
帮助
我该如何修改它才能使按钮无法被点击,并且如果某个选项未 selected,则 returns 出现必需的错误?我试过将 ['required'] 添加到 form::select 但我没有成功。
任何人都可以把我推向正确的方向吗?
您可以使用 $this->validate
use Illuminate\Http\Request;
public function link(Request $reqeust, string $teamId)
{
$request->validate([
'teams' => 'required',
]);
$team = Team::findOrFail($teamId);
$links = Input::get('teams');
$link = Team::findOrFail($links);
$team->links()->attach($link);
session()->flash('success', 'Link Added.');
return back();
}
查看 Laravel Validation
的官方文档