在我的symfony2项目中,我需要在许多控制器中调用相同的动作,这个动作应该返回一个非常简单的php数组,然后这些数组将被这些控制器传递给一个树枝模板。我该怎么做?如何从symfony2控制器操作返回数组?
一个实际的例子可以更好地解释我的情况。
1.shared控制器
// Acme/DemoBundle/Controller/MetasController
class MetasController extends Controller {
public function metasAction() {
$myArray= array();
return $myAarray;
}
}
页面呈现控制器
// Acme/DemoBundle/Controller/PageController class PageController extends Controller { protected $property = "test"; public function indexAction() { $metas= $this->forward('AcmeDemoBundle:Metas:metas'); return $this->render('AcmeDemoBundle:Page:index.html.twig', array('property'=>property, 'metas'=>$metas)); } }
当我为此我得到一个错误:控制器必须是给定的响应数组。
别t转发它,因为第二个函数似乎不是一个实际的Controller,而只是一个返回数组的泛型类。相反,把它变成一个普通的类,然后调用这个方法。 为什么它在一个控制器中摆在首位? – Erik 2014-09-23 10:05:56