php - How to generate individual sorted pagination links in Laravel 4? -
the pagination documentation has info on how add sorting paginated links data:
<?php echo $orders->appends(array('sort' => 'name', 'sort_dir'=>'asc'))->links(); to generate links this:
http://example.com/something?page=2&sort=name&sort_dir=asc so have table headers , values , series of paginated links can click. let's wanted change headers clickable links allowed sort header. how generate url?
for example, lets our current url said above:
http://example.com/something?page=2&sort=name&sort_dir=asc and wanted click "name" table header in order change sorting direction. url want is:
http://example.com/something?page=2&sort=name&sort_dir=desc i have controller called : admincontroller.php method used:
public function getadmins() { // cache sorting inputs $allowed = array('first_name', 'last_name', 'email', 'activated', 'crated_at'); // add allowable columns search on $sort = in_array(input::get('sort'), $allowed) ? input::get('sort') : 'first_name'; // if user type in url column doesnt exist app default first_name $order = input::get('order') === 'asc' ? 'asc' : 'desc'; // default desc $action = null; // select admins group = 1 $admins = db::table('users') ->join('users_roles', 'users.id', '=', 'users_roles.user_id') ->where('users_roles.role_id', '=' ,0) ->orderby($sort, $order) ->paginate($this->perpage); // check actions if (!is_null(input::get('action'))) { $action = input::get('action'); if ($action == "add") { $this->layout->content = view::make('admin.admins-add'); } } else { // current counter admin counts $counter = $admins->getfrom(); view::share('counter', $counter); view::share('sort', $sort); view::share('order', $order); // share admin template view::share('admins', $admins); $this->layout->content = view::make('admin.admins'); } } 1). how display columns headers links in laravel inside view page?
thanks
this how params:
$params = request::except(['sort','sort_dir']); $sort_dir = (request::get('sort_dir') == 'asc') ? 'desc' : 'asc'; $sort = 'whataveryourcolumnis'; $attributes = array_merge(['sort' => $sort, 'sort_dir' => $sort_dir], $params); // , link example: link_to_action('adminscontroller@getindex', 'columnname', $attributes);
Comments
Post a Comment