2

У меня есть URL, как этот http://lp.dev/sisters/adab/1 но маршрут не работает, когда я использую (:num) или (:any), чтобы получить значение 1, так как маршрут дает мне 404 страницыCodeIgniter маршрутов любой или Num не работает

маршруты следующему

$route['default_controller'] = "frontend/home"; 
$route["sisters/adab/(:num)"] = "frontend/pages/$1"; //<-- this is my issue 
$route['404_override'] = 'errors/error_404'; 

контроллер: pages.php внутри фронтэнда папки

class Pages extends CI_Controller { 
    function __construct() { 
     parent::__construct(); 

     $this->name = $this->uri->segment(2); 
    } 

    public function index($variable = NULL) 
    { 
     dd($variable); 

     if(is_page($this->name)) 
      load_view("$this->name/home"); 
     else 
      load_view('errors/error_404'); 
    } 
} 
+0

Вы пытались изменить сегмент uri на 3 для переменной $ this-> name? – sotoz

ответ

3

Я думаю, что вы хотите, это

$route["sisters/adab/(:num)"] = "frontend/pages/index/$1"; //correct 

$route["sisters/adab/(:num)"] = "frontend/pages/$1"; // is wrong because 
//it is redirecting to your page's controller and looking for a method (:num) 
+0

Спасибо .. я подумал, когда я подумал, что если я не передал имя метода, это будет по умолчанию указывать индекс –