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

[HELP] 开发企业站点,但是上传到服务器就404错误.

[复制链接]
发表于 2009-11-23 08:22:03 | 显示全部楼层 |阅读模式
RT....
只有一个404错误....
404 Page Not Found
The page you requested was not found.
如果添加index.php同样...

但是如果并且直接访问控制器的话....(URL:http://**********/index.php/HomePage)
就会提示:
An Error Was Encountered
Unable to locate the model you have specified: mldb
发表于 2009-11-23 08:40:25 | 显示全部楼层
关注中~~没思路啊~
发表于 2009-11-23 10:20:46 | 显示全部楼层
404 看起来像是楼主没有写默认控制器。
第二个错误,是模型没有根据手册的大小写规定命名。
仔细回去看手册吧,都有详细说明。
 楼主| 发表于 2009-11-25 01:42:41 | 显示全部楼层
本帖最后由 cctrv 于 2009-11-25 01:45 编辑

本机服务器是基于Windows的..忘记告诉大家在本机是测试正常的....所以我才考虑到大小写问题....

我将所有控制器的名字都转换为小写...就解决了...
但是我之前一直很注重大小写问题....怎么上传到了Linux的服务器就只能使用小写了?
还有一个很奇怪的问题...
我使用$this->load->model("MLDB")这样载入模型,但是模型名字必须是mldb才可以载入?
是不是CI在大小写方面不注意?

然而在VIEW视图裡面..大小写又似乎很正常了.
发表于 2009-11-25 01:47:11 | 显示全部楼层
$this->load->model("MLDB");
这样写本来就是错误的,你仔细看看手册是如何写的吧,如果你严格按照手册(注意是手册,不是你自己的规则)来命名,绝对不会错。
CI 如果连这个都处理不好就不用出来混了,呵呵

附手册相关 URL:http://codeigniter.org.cn/user_guide/general/models.html
发表于 2009-11-25 02:11:10 | 显示全部楼层
CI的load系列是大小写敏感的,不要以为是win就不敏感了
 楼主| 发表于 2009-12-2 15:08:51 | 显示全部楼层
$this->load->model("MLDB");
这样写本来就是错误的,你仔细看看手册是如何写的吧,如果你严格按照手册(注 ...
Hex 发表于 2009-11-25 01:47


我实在无法明白为什么这么表示是错误的....
在手册中我也没发现什么命名规则的问题.
--------------------------------------------------------------------
模型可以在 controller  中被引用。就像这样:
$this->load->model('Model_name');

模型类文件存放在 application/models/ 文件夹。 如果你愿意,可以在里面建立子文件夹。

最基本的模型类必须像这样:
class Model_name extends Model {

    function Model_name()
    {
        parent::Model();
    }
}

Model_name 是模型类的名字。 类名的首字母必须大写,其他字母小写。并且确保你的类继承了基本模型类(Base Model Class)。
--------------------------------------------------------------------
其次我只发现了这句,但是我把mldb改成小写之后,错误也没有再次发生了.
发表于 2009-12-2 15:20:57 | 显示全部楼层
$this->load->model('Model_name');
这个例子还不够明显吗?
每个例子都是有他的价值的。
所以,load 要大写字母开头。

PS: 大小写一定要遵守,不管出错还是不出错。

本版积分规则