Codeigniter问题中的自定义路由

时间:2016-04-23 17:01:24

标签: codeigniter routes

我的网址与base_url()/category/2类似,其中2是该类别的ID。

这是我的routes.php文件的内容:

$route['category/(:num)'] = "category/$1";

这是我的控制器的内容:

class Category extends CI_Controller {

    public function index()
    {
        echo 1; exit();
    }
}

当我访问/ category / 2时,我得到404页而不是 echo 1 ;

有人能告诉我我错过了什么吗? thx

1 个答案:

答案 0 :(得分:0)

在文档中说base_url()后不应该斜杠。它可以是

base_url() . 'category/2';

或者,首选,作为参数

base_url("category/2");

其次,你必须将参数传递给index($arg)方法,你的路线将是

$route['category/(:num)'] = "category/index/$1";

比,完整的课程

class Category extends CI_Controller
{
    public function index($arg = FALSE)
    {
        if ((int)$arg < 1)
        {
            echo 1;// check input and pass default category or put redirect
            exit;
        }
        else
        {
            echo $arg;
            exit;
        }
    }
}