Хорошо, основная идея состоит в том, чтобы проверить, находится ли строка в таблице, тогда вы должны пойти по этому пути, просто проверьте, находится ли строка в таблице:
public function store(Request $request)
{
$this->validate($request, [
'vegetables' => 'required|min:3'
]);
$vegetable = Exo::where('vegetables', $request->get('vegetables'))->first();
if ($vegetable){
Exo::create($request->all());
return redirect()->route('exos.index')
->with('success', 'new data created successfully');
}
else{
return redirect()->route('exos.index')
->with('error', 'Not vegetable');
}
}
с другой стороны, если вы хотите классифицировать свою таблицу Exo, вам понадобится другой столбец, например, с именем type, тогда код выглядит как ваш основной код (хотя его можно улучшить):
public function store(Request $request)
{
$this->validate($request, [
'vegetables' => 'required|min:3'
]);
$vegetable = Exo::where('vegetables', $request->get('vegetables'))->first();
$word = "vegetable";
if ($vegetable && $vegetable->type == $word){
Exo::create($request->all());
return redirect()->route('exos.index')
->with('success', 'new data created successfully');
}
else{
return redirect()->route('exos.index')
->with('error', 'Not vegetable');
}
}
Надеюсь, это поможет вам.