如何在 Zend Framework 2 中包含多个动作和控制器
How to include multiple action&controller in Zend Framework 2
我想在 ZF2 的一个视图中包含多个视图。
我读了这个 link:
http://framework.zend.com/manual/current/en/modules/zend.view.quick-start.html
但是有一个问题。这样,我必须传递视图中的值,如下所示:
$secondView = new ViewModel (array('var1' => $var1 ......));
在此模式下,控制器和第二个动作被绕过。
有没有办法在不绕过视图的情况下包含视图?我希望从第二个动作控制器传递变量,例如 include php statement
您可以为此使用分音符。
在 module.config.php 中的 'view_manager' 键下,您为您的局部定义了一个模板映射:
'view_manager' => array(
'template_map' => array(
'myPartial' => __DIR__ . '/../view/mymodule/partial/myPartial.phtml',
),
'template_path_stack' => array(
__DIR__ . '/../view',
),
),
然后在视图容器中,您可以使用 partial() View Helper 使用该部分:
<div><?php echo $this->partial('myPartial', array('var1' => 'value1'); ?></div>
您还可以将变量传递给您的部分。这些变量像任何其他视图变量一样在您的部分中被引用:
echo $var1;
如果我没有正确理解你的问题,我认为你所问的是不可能的。
我的建议是将 secondView 所需数据的检索移到其他地方,远离控制器,并从第二个控制器调用它并形成第一个控制器以将它们传递给 secondView。
如果您真的想继续使用您的方法,我看到的唯一可能是使用 javascript 和 ajax 调用来检索视图中您需要的部分
我想在 ZF2 的一个视图中包含多个视图。 我读了这个 link: http://framework.zend.com/manual/current/en/modules/zend.view.quick-start.html
但是有一个问题。这样,我必须传递视图中的值,如下所示:
$secondView = new ViewModel (array('var1' => $var1 ......));
在此模式下,控制器和第二个动作被绕过。 有没有办法在不绕过视图的情况下包含视图?我希望从第二个动作控制器传递变量,例如 include php statement
您可以为此使用分音符。
在 module.config.php 中的 'view_manager' 键下,您为您的局部定义了一个模板映射:
'view_manager' => array(
'template_map' => array(
'myPartial' => __DIR__ . '/../view/mymodule/partial/myPartial.phtml',
),
'template_path_stack' => array(
__DIR__ . '/../view',
),
),
然后在视图容器中,您可以使用 partial() View Helper 使用该部分:
<div><?php echo $this->partial('myPartial', array('var1' => 'value1'); ?></div>
您还可以将变量传递给您的部分。这些变量像任何其他视图变量一样在您的部分中被引用:
echo $var1;
如果我没有正确理解你的问题,我认为你所问的是不可能的。
我的建议是将 secondView 所需数据的检索移到其他地方,远离控制器,并从第二个控制器调用它并形成第一个控制器以将它们传递给 secondView。
如果您真的想继续使用您的方法,我看到的唯一可能是使用 javascript 和 ajax 调用来检索视图中您需要的部分