学校向けのCMSを構築しています。私のアプリケーション構造は次のとおりです
- SITE
-- application
---- configs
---- layouts
---- modules
-------- default
------------ controllers
------------ forms
------------ models
------------ plugins
------------ views
------------ Bootstrap.php
-------- admin
------------ controllers
------------ forms
------------ models
------------ views
------------ Bootstrap.php
---- Bootstrap.php
-- public
-- library
-- index.php
私のコードはローカルホストの zend サーバーでうまく動作しますが、アップロード後にこのエラーが表示されます
致命的なエラー: クラス 'Default_Model_Students' が /home/ernagro/application/modules/default/controllers/IndexController.php 行 23 に見つかりません
これは私の主なブートストラップ コードです:
class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
private $_acl=null;
private $_auth=null;
protected function _initAutoload(){
$modelLoader=new Zend_Application_Module_Autoloader(array('namespace'=>'','basePath'=>APPLICATION_PATH.'/modules/default'));
require_once APPLICATION_PATH.'/modules/default/models/Acl.php';
require_once APPLICATION_PATH.'/modules/default/plugins/AccessCheck.php';
$this->_acl = new Default_Model_Acl();
$this->_auth= Zend_Auth::getInstance();
$fc = Zend_Controller_Front::getInstance();
if (Zend_Auth::getInstance()->hasIdentity())
{
$identity= zend_auth::getInstance()->getStorage()->read();
Zend_Registry::set('role', $identity[role]);
}
else
{
Zend_Registry::set('role', 'guests');
}
$fc->registerPlugin(new Default_Plugin_AccessCheck($this->_acl,$this->_auth));
return $modelLoader;
}
function _initViewHelpers()
{
$this->bootstrap( 'layout');
$layout = $this->getResource('layout');
$view = $layout->getView();
$view->setHelperPath(APPLICATION_PATH.'/helpers','');
$view->doctype('XHTML1_TRANSITIONAL');
$view->headMeta()->appendHttpEquiv('Content-type','text/html;charset=utf-8')
->appendName('description','سیستم مدیریت محتوای مدارس تکفام')
->appendName('keywords','مدیریت محتوای مدارس, مدیریت محتوا, دبیرستان ها, مدارس, سیستم جامع مدارس, مدیریت مدارس, محتوا, مدیریت, سیستم, تکفام, ارنا, تیم ارنا, ernagourp, Erna, Takfam, group')
->appendName('Language','Persian, FA')
->appendName('generator','Erna Group TM(http://www.ernagroup.com')
;
//Zend_Dojo::enableView($view);
ZendX_JQuery::enableView($view);
$view->headTitle('سیستم مدیریت محتوای مدارس تکفام')->setSeparator(' | ');
$navContainerConfig=new Zend_Config_Xml(APPLICATION_PATH."/configs/navigation.xml","nav");
$navContainer = new Zend_Navigation($navContainerConfig);
$view->navigation($navContainer)->setAcl($this->_acl)->setRole(Zend_Registry::get(role));
}
}
そして、これは私のデフォルトのモジュール ブートストラップです。
class Default_Bootstrap extends Zend_Application_Module_Bootstrap{
protected function _initAutoload(){
$modelLoader=new Zend_Application_Module_Autoloader(array(
'namespace'=>'Default','basePath'=>APPLICATION_PATH.'/modules/default')
);
return $modelLoader;
}
}