user254153
user254153

Reputation: 1883

Removing controller function name from URL in Codeigniter. Error when multiple controller

Using CI how can I route to specific contoller with any method name. I have two controller : init and cms. Then in config.routes.php :

 $default_controller = "init";  //default controller
 $controller_exceptions = array('admin','forums');

 $route['default_controller'] = $default_controller;
 $route["^((?!\b".implode('\b|\b', $controller_exceptions)."\b).*)$"] = $default_controller.'/$1';
 $route['404_override'] = '';

 $route['backend'] = 'cms';
 $route['backend/(:any)'] = "cms/product";  

When backend/product is typed I want it to route to backend/product. Again when backend/login is typed I want it to route to backend/login. That means what I need is $route['backend/anyMethodNameAfterbackend'] = "cms/anyMethodNameAfterbackend";

Upvotes: 1

Views: 653

Answers (1)

Vali S
Vali S

Reputation: 1461

Instead of $route['backend/(:any)'] = "cms/product"; use $route['cms/(:any)'] = "cms/$1"; The result would be :

$route['backend'] = 'cms';
$route['backend/(:any)'] = "cms/$1";

Upvotes: 1

Related Questions