gpt4 book ai didi

zend-framework - Zend Module Bootstrap 不加载

转载 作者:行者123 更新时间:2023-12-04 06:47:51 25 4
gpt4 key购买 nike

我有一个非常奇怪的情况,我的模块正在工作,但我的模块的 boostrap 没有被加载。

这是我的 application.ini 中用于模块自动加载的段:

resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
resources.modules[] = ""

这是 Bootstrap :

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 没有被加载。

<?php

class User_Bootstrap extends Zend_Application_Module_Bootstrap
{

protected function _initAutoload()
{
Zend_Registry::set('debug', 'haha');
}
}

通过在任何 Controller 上执行 Zend_Registry::get('debug'),它不会识别出在模块 Bootstrap 中设置的 key 。事实上,User_Bootstrap 中的任何语法错误都不起作用。

我不知道为什么 User_Bootstrap 没有被自动加载。这让我发疯了,因为我已经研究了 5 个小时,甚至无法获得接近涵盖此案例的博客文章...

说到这里,我的模型和 Controller 类正在自动加载。

最佳答案

试试下面...

  1. 更改您的 application.ini 文件以使用

    ; lose the quotes
    resources.modules[] =

    http://framework.zend.com/manual/en/zend.application.available-resources.html#zend.application.available-resources.modules

  2. 从您的应用程序 Bootstrap 类中删除 _initAutoload() 方法。你不需要这个,因为模块 Bootstrap 会自动为你的 User_ 类创建资源加载器

关于zend-framework - Zend Module Bootstrap 不加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9371615/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com