我需要在CodeIgniter 3中使用2个控制器。我有Welcome和Paypal控制器。在路由中,以前我有以下代码:
$route['default_controller'] = 'welcome';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;
然后添加贝宝,我尝试了以下代码,这些代码无济于事:
//$route['(:any)'] = 'paypal/index';
//$route['Paypal'] = 'paypal/index';
//$route['Welcome/Paypal/(:any)'] = 'welcome/index';
我分别或同时尝试了它们,但仍然得到了这个结果:
404 Page Not Found
The page you requested was not found.
同时使用Paypal控制器我需要写什么?
答案 0 :(得分:1)
例如,如果您想转到URL https://example.com/paypal
,并且在Paypal控制器具有index
功能的情况下不需要路由。
如果您想要一种“购买”使用URL https://example.com/buy/socks
的袜子,但想使用PayPal控制器方法buy($item)
处理此袜子的方法,则需要{{1} }。
$route
但是,如果您的“购买” URL为$route['buy/(:any)'] = 'paypal/buy/$1';
唯一需要定义https://example.com/paypal/buy/socks
的地方是您要偏离CodeIgniter的$route
URI模式。
您的问题可能与路线无关。确定您遵循CodeIgniter规则进行控制器文件和类命名?文件名必须以大写字母开头,即controller/function[/arg1[/arg2[...]]
,并且类定义必须与文件名完全匹配。即
Paypal.php
答案 1 :(得分:0)
我从您的问题中得到的是您希望将paypal
控制器重新路由或重定向到welcome
控制器。
如果我做对了,您可以在redirect
控制器中使用paypal
..在redirect
或construct
中使用index
将您重定向到welcome
控制器