我正在构建一个表单,我想在其中填充来自表单的字段(我将其命名为posting.blade.PHP)
我用过的控制器是:
public function store(Request $request) { $this->validate($request,[ 'name' => 'required','email' => 'required|email','number' => 'required','city' => 'required','post' => 'required' ]); Mail::send('emails.posting-message',[ 'msg'=> $request->message ],function($mail) use($request) { $mail->from($request->email,$request->name); $mail->to('helloworld@gmail.com')->subject('Contact Message'); }); return redirect()->back()->with('flash_message','Thank you for your message'); }
问题陈述:
当前控制器不会返回“msg”=>行中的任何内容. $request->消息验证中没有消息.但是,如果我使用
‘MSG’=> $request-> name(返回名称)
我想知道我应该在控制器中做出哪些更改,以便返回验证中存在的每个字段.
我试过这个,但它只返回最后一个值,即post.
'msg'=> $request->name,'msg'=> $request->email,'msg'=> $request->number,'msg'=> $request->city,'msg'=> $request->post
首先,您需要在重定向中添加 – > withInput():
原文链接:https://www.f2er.com/laravel/137582.htmlreturn redirect()->back()->with('flash_message','Thank you for your message')->withInput();
这会将所有提交的表单字段刷新到会话中.
在重定向之后,例如,要获取名称为title的表单字段的值,您可以使用old()帮助程序,例如:
<input type="text" name="title" value="{{ old('title') }}">
您还可以将第二个参数传递给帮助程序:
<input type="text" name="title" value="{{ old('title',$post->title) }}">
你明白了.