【问题标题】:How to access custom named views in Zend controllers如何在 Zend 控制器中访问自定义命名视图
【发布时间】:2012-09-30 05:56:34
【问题描述】:

如何访问自定义命名视图,而不是在 Zend 框架 2.0 中提供相同的方法名称。

例如:

在索引操作“return new ViewModel();”下将调用 index.phtml 但我想在这里调用另一个视图。

【问题讨论】:

    标签: php zend-framework2


    【解决方案1】:

    只需使用您想要的视图调用模型视图:

         $model = new ViewModel(); 
         $model->setTemplate('edit'); 
         return $model;
    

    更多信息:http://framework.zend.com/manual/2.0/en/modules/zend.view.renderer.php-renderer.html

    【讨论】:

    • 执行时出错;请稍后再试。附加信息:Zend\ServiceManager\Exception\ServiceNotFoundException
    • 你的观点在哪里,你怎么称呼它?
    • 我的视图位于:module\forum\view\forum\index\edit.phtml
    • 控制器:module\forum\src\forum\Controller\IndexController.php
    • 抱歉,我刚刚注意到您使用的是 2.0 版本更新的答案。
    【解决方案2】:

    在您的控制器中,您可以使用ViewModelsetTemplate 方法来更改将要呈现的脚本:

    public function someAction()
    {
        // do stuff here
    
        $viewModel = new ViewModel($anArrayOfVariablesForTheView);
        $viewModel->setTemplate('application/view/arbitrary');
        return $viewModel;
    }
    

    请注意,您无需指定.phtml

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-19
      • 2010-11-28
      • 1970-01-01
      相关资源
      最近更新 更多