用户
 找回密码
 入住 CI 中国社区
搜索
查看: 3017|回复: 5
收起左侧

[已解决] 关于Controller extends

[复制链接]
发表于 2011-3-22 11:26:31 | 显示全部楼层 |阅读模式
本帖最后由 wt_yao 于 2011-3-23 10:07 编辑

小弟在开发过程中遇到这么一个问题。
一般view中都是有header和footer部分的。header和footer当然是想通用,因此考虑在controller中,集成。但是本人又不想每个controller都出现这个信息,于是想继承自己的一个controller 命名为:MY_Controller.php 放置在 controller的根目录下。所有的controller都要继承MY_Controller(当然MY_Controller是继承CI_Controller的)。

在controller目录下所有的controller都需要include_once('MY_Controller.php'); 但是我在controller下新建了一级目录,目录里的controller同意要继承'MY_Controller,按理说也要include_once('../MY_Controller.php'); 可是,总是提示错误说找不到MY_Controller.php文件。请各位大虾帮忙看看这个路径应该怎么写。问题应该怎么解决。谢谢。

另外小弟尝试将MY_Controller.php  放到application的core目录下,奇怪的事情发生,居然所有controller会多输出一个回车,这个回车可能对一般的访问没有什么关系,可是对ajax这样的请求,无端端多一个“回车”很难控制字符串。。
发表于 2011-3-22 11:57:37 | 显示全部楼层
你还是好好看下手册的这一节吧,你理解错了,不需要你自己include的:)
发表于 2011-3-22 14:13:16 | 显示全部楼层
简单方法就是把你这个方法写到继承的control类里面就可以了
发表于 2011-3-22 14:48:50 | 显示全部楼层
不需要include ,如果真要include的,要使用:
require_once dirname(__file__) . '/../MY_Controller.php';
这种方法的
 楼主| 发表于 2011-3-22 15:15:44 | 显示全部楼层
感谢各位,是不是直接将继承的controller放到core下? 还是怎样放呢?
发表于 2011-3-23 08:30:05 | 显示全部楼层
就按照你的意思放

本版积分规则