laravel:redirect-> back()返回最后一页而不是基页

时间:2018-04-04 07:48:38

标签: laravel redirect url-redirection

嗨,谢谢你的回复。 我在用户面板中进行了付费操作,并且在成功付款后想要重定向到面板,请使用:

                return redirect()->back();
付款后付款。但是,如果用户点击并在新页面中从面板打开网址然后开始付款操作,则会重定向到该页面而不是面板。

  

关键是有时候面板网址可能不同而且我想要   laravel检测提交请求表单的URL

如何解决这个问题?

5 个答案:

答案 0 :(得分:0)

 return redirect()->back();

用于你想要去最后一页。

 return redirect()->route('login');

此处登录是您想要重定向的路由名称。关注网址了解更多详情。 https://laravel.com/docs/5.6/redirects

答案 1 :(得分:0)

您可以在下面重定向您的路线,因为当您打开第二个标签上的链接然后重定向 - > back()不起作用时,您定义一个静态路由并重定向相同。

thread_id_list = Message.objects.filter(timestamp__gte=< thread's user's membership date joined >).values_list('thread__id', flat=True)
threads = Thread.objects.filter(id__in = therad_id_list)

答案 2 :(得分:0)

我想在这种情况下你可能想要提交带有适当网址参数的当前网址的表格吗?

如果是这种情况,只需在视图中将以下内容添加到表单底部:

<input type="hidden" name="form_url" value="{{ url()->full() }}">

然后,在您的控制器中,您可以访问它:

$request->form_url;

这将使您能够在将来的逻辑中保留表单提交的URL。

干杯

答案 3 :(得分:0)

将用户重定向到他们的面板。

return redirect()->route(“user_panel”, [“user” => Auth::user()];

答案 4 :(得分:0)

我最近遇到了这个问题,因此我将基本URL放在控制器的session中,然后您就可以从session中获取它并随时重定向到该URL。