laravel 路由重定向问题(laravel 5.3)
Posted
技术标签:
【中文标题】laravel 路由重定向问题(laravel 5.3)【英文标题】:laravel route redirect issue (laravel 5.3) 【发布时间】:2017-04-17 03:56:50 【问题描述】:我正在使用任何类型的路由,然后在这种方法中,我基于一种请求类型进行处理。
路线
Route::any('/setting/custom-header/id?', 'SettingController@customHeader');
在检查类型之前从控制器中检查它是这样的
if ($id == Auth::user()->id || Auth::user()->is_admin)
因为请求是 get 它给出了一个视图,我的网址是这个 http://app-full.dev/setting/custom-header/1
这里 1 是我登录的用户的 ID。我返回的视图如下:
return view('setting/custom-header')->with(compact('custom_headers','id'));
对我来说很好。
当请求发布时,它会出现在方法中。创建数据后,我希望返回上述 url 在 http://app-full.dev/setting/custom-header/1 上的含义相同 用户在此处登录的最后的平均 id 我使用重定向作为
return redirect('setting/custom-header/id');
这里 /id 实际上是用户的 id .. 我不知道如何在这里给出 id 以便 url 可以以正确的方式出现,而不是最后的关键字 id。 如果有人可以帮助解决此问题,谢谢!
【问题讨论】:
【参考方案1】:以下代码将检索用户 ID 并将其放入 URL。
return redirect('setting/custom-header/' . Auth::id());
将其传递给视图:
return view('setting/custom-header')->with(['userid' => Auth::id()]);
然后使用它:
window.location.href = "/setting/custom-header/ $userid ";
【讨论】:
感谢它在上述情况下的工作,我也在脚本中的索引中使用了我该怎么做?window.location.href = "/setting/custom-header/id";
您可以将用户 ID 与您的视图一起传递并在 html/javascript 中打印。您可以在laravel.com/docs/5.3/views#passing-data-to-views 阅读有关它的更多信息。要打印变量,您必须使用 window.location.href = "/setting/custom-header/ $id ";
我在这里传递 id 作为return view('setting/custom-header')->with(compact('custom_headers','id'));
不知道如何在那里连接所以请
它说未定义的用户 ID
请阅读laravel.com/docs/5.3/views#creating-views,了解如何在视图中传递和使用变量或发布刀片代码。【参考方案2】:
让你的路线如下
Route::post('/setting/custom-header/id?',['as'=>'giveSomeName','uses'=>'SettingController@customHeader']);
虽然重定向使用此名称,
return redirect()->route('giveSomeName',[$id]);
希望这对你有用
【讨论】:
以上是关于laravel 路由重定向问题(laravel 5.3)的主要内容,如果未能解决你的问题,请参考以下文章
Laravel 5 - 发布路由上的 htaccess HTTPS 重定向不起作用。