簡體   English   中英

來自幾個類的Symfony2模板變量

[英]Symfony2 template variables from several classes

我需要從兩個地方將變量傳遞給模板:

  1. 普通控制器的方法,例如:

     class ProductsController extends Controller { /** * Products * @Route("", name="products") * @Template */ public function productsAction() { return array('var1' => 'sth', 'var2' => 'etc); } 
  2. Bootstrap控制器(由kernel.controller事件觸發的監聽器)

     class BeforeControllerListener { public function onKernelController(FilterControllerEvent $event) { // @some_vars } 

如何從監聽器向模板注入@some_vars 兩種方法中的變量都不是靜態的,因此全局變量不是答案。

在你的onKernelController()執行:

$event->getRequest()->attributes->add(array('someVar' => 'someValue'));

在您的productsAction()

$request->attributes->get('someVar');

干杯;)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM