php – 如何构建需要特定URL查询参数的Laravel路由?
假设我有这样的网址:
> localhost / admin / users /< ---主管理员用户页面 class UsersController extends Controller { public function index() // call some services // return a view } public function dataRefresh { // call some services // return some JSON } } 这是我的routes.php我正在努力: Route::get('admin/users',array('as' => 'admin.users','uses' => 'AdminUsersUsersController@index')); Route::get('admin/users????',array('before' => 'ajax','as' => 'admin.users','uses' => 'AdminUsersUsersController@dataRefresh')); 在我的第二个路径中我需要做什么才能要求URL查询参数?数据并且还需要将其设置为data = refresh?我如何确保它不与其他路线冲突? 注意: 注意:我已将ajax路由过滤器应用于第二个路由.我还设置了路由指向我的控制器中的dataRefresh方法. 这是我所拥有的.有任何想法吗?
Laravel不使用uri的查询部分进行路由,对于localhost / admin / users?data = refresh你可以使用这样的东西:
Route::get('admin/users',function(){ $data = Input::get('data'); }); 您可以使用localhost / admin / users?data = refresh向路由发出请求.您可以这样声明您的路线: Route::get('admin/users',array('before' => 'ajax:data','uses' => 'AdminUsersUsersController@dataRefresh')); 这里,刷新传递给路由过滤器,并在第三个参数($param)中可用,因此您可以在$param中检索刷新.创建过滤器,如下所示: Route::filter('ajax',function($route,$request,$param){ // This will give query string 'refresh' // if you passed it as http://domain.com?data=refresh $data = $request->get($param); // You can retrieve the $param,third argument // if you pass a parameter,i.e. 'refresh' // param will contain 'refresh' }); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |