我设法通过在应用程序/核心中添加MY_Router文件从子目录运行默认控制器,一切正常但这是我现在面临的问题。如果url命中/ admin或/ student或/我无法路由它老师最终是控制器中的子目录。
https://s14.postimg.org/pr3ta38f5/controller_structure.png
https://s14.postimg.org/z05zk7hb5/error_1.png
https://s14.postimg.org/mmt5darmp/issue_2.png
https://s14.postimg.org/kwa4bta3l/page_controller.png
https://s14.postimg.org/j5voo2hy9/routes.png
答案 0 :(得分:0)
如果文件夹结构如此:
- controllers
- teachers
- Teacher_home.php
- students
- Student_home.php
- admin
- Admin_home.php
然后正常的CI路由将使用默认索引方法的URL如下:
mysite/teachers/teacher_home
mysite/students/student_home
mysite/admin/admin_home
您的路线可以将mysite / teacher_home指向上面的相关控制器,如下所示:
$route['teacher_home'] = 'teachers/teacher_home';
在CI文档中,他们描述了您可以使用的外卡:http://www.codeigniter.com/user_guide/general/routing.html
但是任何路由都必须指向有效的控制器/方法URL。让您的网站/应用在正常的默认路由下工作,然后在之后添加备用路由。
所以删除你当前的路线。如果您有一条默认路线,如果您没有正确编写或者顺序正确,可能会弄乱您的其他路线。
希望有所帮助,