仅设置影响方法的路由控制器
Setup Route Controller Only That Affect To Method
我有使用纯 CI 的项目。现在我想迁移到 CI HMVC。在 route.
中发现问题
例如,这是目录
- config
-- routes.php
- applications
-- modules
--- moduleA
---- controllers
------ login.php
--- moduleB
---- controllers
------ anothercontroller.php
在login.php中,我有2个方法,index()
和test()
。
在 config > routes.php 中,我定义了
$route['login'] = 'moduleA/login';
然后,我打开localhost/CI/login
,页面成功打开。
但是,当我打开 localhost/CI/login/test
时,它是 return 404。
我必须定义 $route['login/test'] = 'moduleA/login/test'
才能打开我的测试方法。
还有另一种方法可以只定义控制器而不是定义方法吗?我有 >50 方法,这需要更多的努力。
谢谢:)
如 the CI Manual for routing 中所述,可以在您的路由中使用通配符甚至正则表达式。
这将适用于您的问题:
$route['login/(:any)'] = 'moduleA/login/';
我有使用纯 CI 的项目。现在我想迁移到 CI HMVC。在 route.
中发现问题例如,这是目录
- config
-- routes.php
- applications
-- modules
--- moduleA
---- controllers
------ login.php
--- moduleB
---- controllers
------ anothercontroller.php
在login.php中,我有2个方法,index()
和test()
。
在 config > routes.php 中,我定义了
$route['login'] = 'moduleA/login';
然后,我打开localhost/CI/login
,页面成功打开。
但是,当我打开 localhost/CI/login/test
时,它是 return 404。
我必须定义 $route['login/test'] = 'moduleA/login/test'
才能打开我的测试方法。
还有另一种方法可以只定义控制器而不是定义方法吗?我有 >50 方法,这需要更多的努力。
谢谢:)
如 the CI Manual for routing 中所述,可以在您的路由中使用通配符甚至正则表达式。
这将适用于您的问题:
$route['login/(:any)'] = 'moduleA/login/';