私のモジュールが動作しているが、モジュールのブーストラップがロードされていないという非常に奇妙なケースがあります。ここでZend Moduleブートストラップがロードされない
は、モジュールの自動ロードのための私のapplication.ini内のセグメントである:ここで
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.modules[] = ""
は、ブートストラップです:ここで私のモジュールの
protected function _initAutoload()
{
$autoloader = new Zend_Application_Module_Autoloader(array(
'namespace' => 'User_',
'basePath' => APPLICATION_PATH .'/modules/user',
'resourceTypes' => array (
'model' => array(
'path' => 'models',
'namespace' => 'Model',
)
)
));
}
構造
Application
--modules
----user
------config/
------controllers/
------models/
------views/
------Bootstrap.php
----admin
問題User_Bootstrapがロードされていないことです。なZend_Registry ::取得(「デバッグ」)任意のコントローラ上を行うことにより
<?php
class User_Bootstrap extends Zend_Application_Module_Bootstrap
{
protected function _initAutoload()
{
Zend_Registry::set('debug', 'haha');
}
}
、それがキーは、モジュールのブートストラップに設定されたことを認識しません。実際、User_Bootstrapの構文エラーは機能しません。
なぜUser_Bootstrapが自動ロードされていないのか分かりません。これは私が5時間勉強していて、このケースをカバーするブログの投稿を手に入れることができないので私を狂わせてしまっています...
私のモデルとコントローラクラスについては、オートロードがうまく動作しています。
+1。それに私を打つ。いつものように、いい仕事。 ;-) –