设为首页
收藏本站
Archiver
用户
登录
入住
用户名
Email
自动登录
找回密码
密码
登录
入住 CI 中国社区
首页
返回 CodeIgniter 中国首页
论坛
BBS
导读
Guide
个人主页
Space
中文手册
搜索
CodeIgniter 搜索引擎
视频教程
案例
任务
搜索
搜索
本版
帖子
用户
设为首页
收藏本站
Archiver
开启辅助访问
切换到宽版
日志
相册
分享
记录
CodeIgniter4
CodeIgniter3
CodeIgniter2
帖子
好友
道具
勋章
收藏
任务
记录
留言板
设置
我的收藏
退出
腾讯QQ
微信登录
CodeIgniter 中国开发者社区
»
论坛
›
CodeIgniter 开发
›
CodeIgniter 问答求助
›
扩展My_Controller却提示找不到Class
1
2
3
/ 3 页
下一页
返回列表
楼主:
hahacc
[已解决]
扩展My_Controller却提示找不到Class
[复制链接]
Hex
Hex
当前离线
积分
50193
IP卡
狗仔卡
发表于 2009-4-8 19:11:52
|
显示全部楼层
在上面的例子中,CodeIgniter 将尝试寻找并装载一个名为 blog.php 的控制器。
这里的意思是说要小写文件名。
对于你提出的问题,好像是类库的命名不对,没找到 MY_Controller,这个东西应该是类库。
看
http://codeigniter.org.cn/user_guide/general/core_classes.html
回复
支持
反对
使用道具
举报
显身卡
deader
deader
当前离线
积分
-321
IP卡
狗仔卡
发表于 2009-4-13 15:12:18
|
显示全部楼层
我也是同样的问题,大侠怎么解决的?
回复
支持
反对
使用道具
举报
显身卡
deader
deader
当前离线
积分
-321
IP卡
狗仔卡
发表于 2009-4-13 15:13:37
|
显示全部楼层
唯一MY_Email.php(就是手册里的那个例子)能够找到
其他的都提示:
An Error Was Encountered
Unable to load the requested class: basic
怎么办?
回复
支持
反对
使用道具
举报
显身卡
Hex
Hex
当前离线
积分
50193
IP卡
狗仔卡
发表于 2009-4-13 16:05:04
|
显示全部楼层
看看 class: basic 是什么东西?是不是父类?
回复
支持
反对
使用道具
举报
显身卡
deader
deader
当前离线
积分
-321
IP卡
狗仔卡
发表于 2009-4-13 16:58:54
|
显示全部楼层
本帖最后由 deader 于 2009-4-13 17:10 编辑
文件application/libraries/MY_Emai.php
代码:
PHP
复制代码
<?php
class
MY_Emai
extends
Controller
{
function
__construct
(
)
{
echo
"email"
;
}
}
?>
复制代码
然后在一个controller里
$this->load->library('emai');
view 显示错误如下:
An Error Was Encountered
Unable to load the requested class: Emai
但是 我把类名'Emai' 改为Email,load里也改为'Email',libraries文件夹下也保存为'Email' 就正常,并且只有改为Email才能正常,
请教hex老大,怎么回事,搞了2个小时了,万分感谢!
补充一下,我的是linux系统
回复
支持
反对
使用道具
举报
显身卡
Hex
Hex
当前离线
积分
50193
IP卡
狗仔卡
发表于 2009-4-13 18:34:52
|
显示全部楼层
MY_ 是子类化的前缀!你必须有父类才能这么做,也就是你必须有 Emai 这个类。
如果你是从系统的 Email 继承,那就要用 MY_Email,否则如果是自己新写的类,就要用 Emai 作为类名和文件名!
回复
支持
反对
使用道具
举报
显身卡
deader
deader
当前离线
积分
-321
IP卡
狗仔卡
发表于 2009-4-13 19:53:56
|
显示全部楼层
本帖最后由 deader 于 2009-4-14 09:48 编辑
哦,明白了。谢谢hex
如果我要继承ci的Controller类 该如何写?
看了
http://codeigniter.org.cn/user_guide/general/core_classes.html
,
现在又两个问题:
1、写成MY_Controller没有问题,但是我要换一个名字就不行,该怎么办?
2、不保存为MY_的格式,假设直接保存为emais.php,然后在autoload里load,但是我再 extends email ...的时候,又是500错误,或者是空白页面。搞不明白了。
我的想法是,我做一个基本类BasicController 继承自ci 的 Controller ,以后写的类都继承自BasicController,这样就比较好操作了,但是现在不知道怎么实现,总是500错误。
回复
支持
反对
使用道具
举报
显身卡
yicool
yicool
当前离线
积分
7
IP卡
狗仔卡
发表于 2009-12-28 11:20:39
|
显示全部楼层
扩展普通类,根本就是找不到被扩展的类。。
class MY_Pagination extends CI_Pagination {
Fatal error: Class 'CI_Pagination' not found in J:\web
如果扩展核心类就可以找到。。。这个框架,哎。。。
回复
支持
反对
使用道具
举报
显身卡
Hex
Hex
当前离线
积分
50193
IP卡
狗仔卡
发表于 2009-12-28 12:25:14
|
显示全部楼层
回复
18#
yicool
呵呵,不知道楼上是如何写的,肯定是代码没写对,我这里一直都很正常,楼主可以把你遇到问题的代码贴出来,大家可以帮你分析一下~
回复
支持
反对
使用道具
举报
显身卡
longjianghu
longjianghu
当前离线
积分
1938
IP卡
狗仔卡
发表于 2009-12-31 16:55:46
|
显示全部楼层
我用的笨办法,先把原来的类文件include进来
回复
支持
反对
使用道具
举报
显身卡
下一页 »
1
2
3
/ 3 页
下一页
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
入住 CI 中国社区
本版积分规则
发表回复
回帖后跳转到最后一页