我是一个laravel初学者,也是我第一次使用一个框架,我刚刚学习了5天的laravel,所以我不太了解这个框架,我使用的是最新的laravel 8,我的项目有一个问题,当试图验证数据的形式。
1.我不知道这个方法是否有效(可能无效)
$request->validate([
'name' => 'required',
'icons' => 'required',
]);
1.当我尝试获取错误消息{{$error}}时,视图中仅显示[]。
<form action="{{ route('poseicon.store') }}" method="post" enctype="multipart/form-data">
@csrf
<div class="display">
<label>name:</label>
<input type="text" name="name" id="name">
<label>icons:</label>
<input type="file" name="icons" id="icons" class="">
{{$errors}}
<input type="submit" value="submit">
</div>
</form>
这是我的控制器
public function store(Request $request)
{
$request->validate([
'name' => 'required',
'icons' => 'required',
]);
//this working correctly when validate method above deleted
$file = $request->file('icons');
$filename = 'pose-photo-' . time() . '.' . $file->getClientOriginalExtension();
$path = $file->storeAs('img', $filename);
//this also working correctly when validate method above deleted
Poseicon::create([
'name' => $request->name,
'icons' => $filename
]);
return redirect('/poseicon');
}
我已经尝试了所有的文档说,但仍然不工作
3条答案
按热度按时间jecbmhm31#
正如laravel doc所说,您应该使用
@error
指令之一或在$errors
上循环或
mpbci0fu2#
简单地把这个代码在你想显示错误信息。Laravel提供这个错误代码。
在你的视图页面你把这个。
在控制器中,您只需声明需要哪个字段。
ndh0cuux3#
试试这个。