将页面URL参数传递给Laravel 5.2中的控制器

时间:2016-05-03 20:39:20

标签: laravel url controller routes laravel-5.2

在我的应用程序中,我有一个名为index.blade的页面,其中包含路由/index。在其网址中,它有一些get参数,如?order?type

我想将这些$_get参数传递给我的路由控制器操作,从DB查询并将其结果数据传递给索引页面。我该怎么办?

2 个答案:

答案 0 :(得分:12)

如果您想访问从getpost请求使用

发送的数据
public function store(Request $request)
{
    $order = $request->input('order');
    $type = $request->input('type');
    return view('whatever')->with('order', $order)->with('type', $type);
}

您也可以使用通配符。

例句链接

website.dev/user/potato

<强>路线

Route::put('user/{name}', 'UserController@show');

<强>控制器

public function update( $name)
{
    User::where('name', $name)->first();
    return view('test')->with('user', $user);
}

检查Laravel文档Requests

答案 1 :(得分:2)

对于那些需要传递一部分网址作为参数的用户(在laravel 6.x中进行了测试,也许可以在laravel 5.x上运行):

路线

Route::get('foo/{bar}', 'FooController@getFoo')->where('bar', '(.*)');

控制器:

class FooController extends Controller
{
    public function getFoo($url){
    return $url;
    }
}

测试1:

localhost/api/foo/path1/path2/file.gif将发送给控制器并返回:

path1/path2/file.gif

测试2:

localhost/api/foo/path1/path2/path3/file.doc将发送给控制器并返回:

path1/path2/path3/file.doc 

以此类推...