Codeigniter 使子目录控制器工作
Posted
技术标签:
【中文标题】Codeigniter 使子目录控制器工作【英文标题】:Codeigniter making sub-directory controllers work 【发布时间】:2012-02-24 06:47:34 【问题描述】:我无法让页面加载我想要的控制器。
例如,我希望我的网站加载为 localhost/sitename/catergory1/catergory2,其中类别 1 是它自己的控制器,而类别 2 是一种方法。所以我尝试将它添加到我的 routes.php 中:
$route['catergory1'] = 'catergory1/cat1';
我的控制器文件设置为:-Controller
-Home.php
-catergory1
-cat1.php
我认为这会导致codeigniter在category 1文件夹中加载控制器'cat1',但是当我转到localhost/sitename/catergory1时,它只会加载我的默认控制器'home'。我已经尝试将它放在 routes.php 的 uri 路由和保留路由部分,但它仍然无法正常工作。这可能真的很容易,但我对此很陌生。
这是控制器本身,只是为了防止与它们有关: 家庭控制器:
class Home extends CI_Controller
function index()
$this->load->view('home');
Cat1 控制器:
class Cat1 extends CI_Controller
function index()
$this->load->view('cat1');
我只是愚蠢并错过了一些简单的事情吗? 谢谢。
【问题讨论】:
【参考方案1】:顺便说一句,category1
中有错字。
如果我没听错,你的结构是这样的:
\ controllers
- home.php
\ category1 \
- cat1.php
如果是这样,您对自己的路线感到困惑:
$route['category1 '] = 'category1/cat1/index';
需要定义方法index
,这是基于你的'cat1.php'文件是:
class Cat1 extends CI_Controller
function index()
$this->load->view('cat1');
我写了这篇文章,因为人们通常对 CI 中的路线感到困惑:http://blog.biernacki.ca/2011/12/codeigniter-uri-routing-issue-with-controller-folders/
【讨论】:
非常感谢,现在完美运行!不敢相信我因为错过了这么一件小事而把头发拉出来。以上是关于Codeigniter 使子目录控制器工作的主要内容,如果未能解决你的问题,请参考以下文章