Parameters 使用可选参数LARAVEL 4进行分页
我列出的记录和分页都很好,但当我传递可选参数时,例如: /panelapp/usuarios?nivel=admin和page=2 我只认识到变量页面忽略了另一个页面,而过滤器是否也会这样做?我把代码留在这里: 路线:Parameters 使用可选参数LARAVEL 4进行分页,parameters,laravel-4,pagination,Parameters,Laravel 4,Pagination,我列出的记录和分页都很好,但当我传递可选参数时,例如: /panelapp/usuarios?nivel=admin和page=2 我只认识到变量页面忽略了另一个页面,而过滤器是否也会这样做?我把代码留在这里: 路线: Route::get('/panelapp/usuarios', array( 'as' => 'panel-lista-usuarios', 'uses' => 'CuentaController@getLista' )); 昆塔控制器: public
Route::get('/panelapp/usuarios', array(
'as' => 'panel-lista-usuarios',
'uses' => 'CuentaController@getLista'
));
昆塔控制器:
public function getLista(){
$lista = Usuario::paginate(10);
return View::make('panelapp.cuentas.lista')->with('usuarios',$lista);
}
视图:
我打算在这里瞎拍,但我想你需要的是:
public function getLista()
{
$nivel = Input::get('nivel', default_level);
$status = Input::get('status', default_status);
$order = Input::get('order', default_order);
// ... you get the idea
$lista = Usuario::where('nivel', $nivel)
->where('status', $status)
->where('order', $order)
->paginate(10);
return View::make('panelapp.cuentas.lista')->with('usuarios',$lista);
}
其中默认级别、默认状态和默认顺序是您的默认值。您需要用英语发布此问题。对不起,我从您的代码中编辑了我的问题。我看到您没有使用nivel参数,为什么您认为它被忽略了?$lista=Usuario::Where'nivel',Input::get'nivel->paginate10;这将帮助我使过滤器是静态的,但是我需要的是level参数是可选的,分页是根据为url接收的参数实现的:例如:case:1/panelapp/users?level=admin&page=2 case 2/panelapp/users?level=admin&status=1&page=2 case 3/panelapp/users?level=admin&status=1&order=desc&page=2 case:n,我理解这个想法,但我不想在默认情况下输入paramatro值,我需要的是根据执行的查询识别参数是否不存在,首先url将如下所示:/panelapp/usuarios然后将默认值设置为null并检查$nivel是否存在。对其他人也这样做,并根据你的ifs运行你的查询。好的,代码工作得很好,谢谢大家的支持,它们在这里很棒
public function getLista()
{
$nivel = Input::get('nivel', default_level);
$status = Input::get('status', default_status);
$order = Input::get('order', default_order);
// ... you get the idea
$lista = Usuario::where('nivel', $nivel)
->where('status', $status)
->where('order', $order)
->paginate(10);
return View::make('panelapp.cuentas.lista')->with('usuarios',$lista);
}