2

ホームページのブログ記事にページネーションを使用しようとしています:

コントローラ:

public function index()
{
   $data['view'] = "home";

    /** Pagination **/
    $config['base_url'] = base_url().'home/';
    $config['total_rows'] = $this->Blog_model->count_articles();
    $config['per_page'] = 2; 
    $config['uri_segment'] = 2;

    $this->pagination->initialize($config);

    $data['paginate'] = $this->pagination->create_links();
    $data['articles'] = $this->Blog_model->get_articles($config['per_page'],$this->uri->segment(2));

    $this->load->view('template', $data);

}

情報の取得とページネーションはすべて正常に機能しているように見えますが、番号のリンクまたは次のリンクをクリックすると、404 Not Found エラーが発生します。

これはURIセグメントと関係があると思いますか?

ロードされる URL は、2 ページ目のhttp://www.example.com/home/2です。

4

3 に答える 3

4

次のようなルーティングルールを追加することもできます。

$route['home/(:num)'] = 'yourhomecontroller';

次に、インデックスやメソッドなしで使用できます。numは、ホームの後に番号が付いたURLをホームのインデックスにルーティングするように指示します。

于 2012-06-06T00:59:02.207 に答える
2

Codeigniter ページの形式はhttp://domain.com/controller/method/argumentsです。
メソッドを省略した場合、デフォルトのメソッドがロードされますが、引数を渡す必要がある場合は、メソッドを前に配置する必要があります。

 http://www.example.com/home/index/2
于 2012-06-05T17:31:51.313 に答える