使用CI 3我能够从我的数据库中检索记录并显示有效的分页。现在我想整理网址。
我希望网址看起来像这样;
example.com/search?q=123
example.com/search/10?q=123
example.com/search/20?q=123
相反,它们显示如下;
example.com/search?q=123
example.com/search/index/10?q=123
example.com/search/index/20?q=123
请注意,在第2页和第3页有index
- 这就是我要删除的内容。
我已阅读有关routing的文档,但我无法让它发挥作用。
我的代码示例如下所示。
控制器
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Search extends CI_Controller{
public function index()
{
$search_term = $this->input->get('q');
$config['uri_segment'] = 3;
$config['base_url'] = base_url().'search/index';
$config['use_page_numbers'] = FALSE;
$config['reuse_query_string'] = TRUE;
$config['total_rows'] = $this->search_model->item_list_count($search_term);
$config['per_page'] = 10;
$this->load->library('pagination');
$this->pagination->initialize($config);
}
}
routes.php文件
$route['search/(:any)'] = 'search/index/$1';
每当我从/index
删除base_url
时,地址栏中的网址都会成功更改,但第1页只会刷新。我没有看到任何新数据,也没有转到我的搜索结果的第2页。
$config['base_url'] = base_url().'search';
我还阅读this question,想知道是否还有其他解决方案?
答案 0 :(得分:-1)
将分页配置中的基本URL更改为:
$config['base_url'] = base_url().'search';