Laravel 在 Post 请求后重定向到登录页面
Laravel Redirect to Login page after Post Request
我正在将表单数据插入数据库,成功提交后我想重定向到潜在客户页面。
HTML 形式:
<form method="post" action="{{url('lead-message')}}">
{{csrf_field()}}
<input type="hidden" name="lead_id" value="{{$leads->id}}">
<div class="form-group">
<label for="exampleFormControlTextarea1">Type your message*</label>
<textarea class="form-control" name="lead_message" id="lead_message" rows="3" value="" required></textarea>
</div>
<button type="submit" class="btn btn-primary">Send Message</button>
</form>
路线:
Route::group( ['middleware' => ['auth', 'phoneverified']], function() {
Route::resource('leads', 'LeadsController');
});
控制器:
public function leadMessage (Request $request) {
$validate = $request->validate([
'lead_message' => 'required',
]);
$storeMessage = new LeadMessage;
$storeMessage->lead_id = $request->lead_id;
$storeMessage->message = $request->lead_message;
$storeMessage->save();
Session::flush('success', 'Message sends successfuly!');
return redirect('leads/'.$request->lead_id);
}
但是提交成功后,它重定向到登录页面而不是线索页面,当我再次登录时,它直接将我重定向到线索页面。
我不知道我哪里错了。在这方面,我将不胜感激。
您应该使用 Session::flash('success', 'Message sends successfuly!');
而不是 Session::flush('success', 'Message sends successfuly!');
,因为 Session::flush()
会破坏您的会话。
更多 see documentation
我正在将表单数据插入数据库,成功提交后我想重定向到潜在客户页面。
HTML 形式:
<form method="post" action="{{url('lead-message')}}">
{{csrf_field()}}
<input type="hidden" name="lead_id" value="{{$leads->id}}">
<div class="form-group">
<label for="exampleFormControlTextarea1">Type your message*</label>
<textarea class="form-control" name="lead_message" id="lead_message" rows="3" value="" required></textarea>
</div>
<button type="submit" class="btn btn-primary">Send Message</button>
</form>
路线:
Route::group( ['middleware' => ['auth', 'phoneverified']], function() {
Route::resource('leads', 'LeadsController');
});
控制器:
public function leadMessage (Request $request) {
$validate = $request->validate([
'lead_message' => 'required',
]);
$storeMessage = new LeadMessage;
$storeMessage->lead_id = $request->lead_id;
$storeMessage->message = $request->lead_message;
$storeMessage->save();
Session::flush('success', 'Message sends successfuly!');
return redirect('leads/'.$request->lead_id);
}
但是提交成功后,它重定向到登录页面而不是线索页面,当我再次登录时,它直接将我重定向到线索页面。
我不知道我哪里错了。在这方面,我将不胜感激。
您应该使用 Session::flash('success', 'Message sends successfuly!');
而不是 Session::flush('success', 'Message sends successfuly!');
,因为 Session::flush()
会破坏您的会话。
更多 see documentation