带参数的编码器路由


Codeigniter routes with arguments

我想这样做,但它不会工作,这意味着我做错了。

$route['print/:num'] = "user/doprint/goprint/:num";

让我解释一下。我在user文件夹下有一个控制器doprint, goprintdoprint内部的一个方法,它接受id作为参数。现在我不希望用户通过mydomain.com/user/doprint/goprint/2访问它。我希望他们以mydomain.com/print/2的形式访问它。

我的控制器如下

class Doprint extends User_Controller {
    public function index()
    {
        $data['subview'] = 'print';
        $this->load->view('main_layout', $data);
    }
    public function goprint($id=NULL)
    {
        $data['model'] = $this->usermodel_model->get($id);
        $data['subview'] = 'print';
        $this->load->view('main_layout', $data);
    }
}

路由规则的语法是(根据文档):

$route['print/(:num)'] = "user/doprint/goprint/$1";