2015-10-20 102 views
2

已經安裝在應用程序/核心/ A My_Model.php文件在unix上找不到Codeigniter擴展核心類'My_Model',但在Windows中確定?

內容是:

<?php if (! defined('BASEPATH')) exit('No direct script access allowed'); 

class My_Model extends CI_Model{ 

    public function __construct() { 
     parent::__construct(); 
    } 

    public function x(){ 

    } 

} 

這然後由我的用戶模型的一個延伸 - loginmodel.php:

<?php 

class LoginModel extends My_Model{ 

    public function __construct() { 
    parent::__construct(); 
    } 

    function checkAD() { 

    } 

} 

所有的工作在我的本地Windows Bitnami WAMP開發部署上很好,但部署在Unix/Apache主機上時.....

收到錯誤:

致命錯誤:類 'My_Model' 在沒有找到... /應用/型號/ loginmodel.php第2行

httpd.conf的問題可能?任何幫助? 謝謝

+0

按照文件命名約定。 UNIX區分大小寫,而Windows不區分大小寫。 –

+0

我認爲core/MY_Model.php應該也是。 'class MY_Model extends CI_Model {' – user4419336

回答

0

使用你的應用程序/ config文件前綴

$config['subclass_prefix'] = 'MY_'; 

嘗試重命名爲

MY_Model

2

Unix區分大小寫,而不是Windows。例如,您應該根據您的代碼在LoginModel.php中重命名您的文件loginmodel.php。

+0

不知道區分大小寫的Windows v Unix,但專注於My_Model而不是LoginModel - 會檢查這一點。 –

+0

根據CI文檔,你的類文件應該命名爲'ucfirst('class_name')',因此在你的情況下,好的做法是'Loginmodel.php',而類本身也是'Loginmodel'。 – Tpojka

0

你們都走在正確的軌道上。可能最接近解決方案的是@ wolfgang1983。這是My_Model.php文件的名稱。將其更改爲MY_Model.php並繁榮。迄今爲止,所有其他的命名問題似乎都不相關。由於