我想让我的 Controller - 即 Page_IndexController - 扩展基本 Controller 。
例如;
class Page_IndexController extends Content_IndexController {
}
但是,自动加载器似乎在任何时候都没有识别出它是 Controller 类的事实 - 我收到错误 fatal error :找不到类“Content_IndexController”
第一个问题:如何解决这个问题?
我可以通过 require_once 通用“内容” Controller 来临时修复此问题,但这并不理想。
下一个问题是,如果我的页面 Controller 有自己的操作 View 脚本,那么它工作就没有问题。
但是,如果我扩展一个 Controller ,并且我在页面 Controller 上调用“listAction”,但此操作是在 Content_IndexController
中实现的,它仍然会在页面 Controller “脚本”目录。
第二个问题:如果我的 Controller 没有自己的 View 脚本,如何配置它以使用其父 View 脚本?
最佳答案
如果您的应用程序可以找到 Page_IndexController,那么您可能有一个页面模块。如果您没有在应用程序中使用模块,则必须将 Controller 命名为 PageController 和 ContentController,而不是 Page_IndexController,...因此解决方案是向自动加载器注册“Content_”命名空间。
关于第二个问题。您可以扩展提供的 ViewRenderer Controller 操作助手并覆盖用于查找 View 脚本的方法,以便它们可以在需要时在其他位置查找。您只需将 View 渲染器传递给前端 Controller 即可。要将您自己的 ViewRenderer 传递给 Controller ,请查看 Advanced Usage Examples .
关于zend-framework - Zend Framework - 扩展 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1517430/