如何将变量传递给控制器

时间:2012-12-06 21:43:44

标签: symfony

我创建了自己的包。这个包中有一个类。

在这堂课中,我有一个变量$Url。我想在我的控制器中使用另一个包中的这个变量。如何将变量传递给另一个包中的控制器?

2 个答案:

答案 0 :(得分:0)

我认为最好的选择是创建一个Controller即服务。您可以在a blog article by Richard Miller中了解相关内容。

完成此操作后,您可以创建值为$Url的服务参数:

# app/config/config.yml
parameters:
    my_first_bundle.url: Some value

services:
    # request and response services
    my.response: 
        class: Symfony\Component\HttpFoundation\Response
    my.request: 
        class: Symfony\Component\HttpFoundation\Request

    # controller services
    my_second_bundle.mycontroller: 
        class: Acme\MySecondBundle\Controller\MyController
        arguments: [ %my.response%, %my.request%, %my_first_bundle.url% ]

答案 1 :(得分:0)

听起来你需要将该类转换为服务并使用依赖注入设置$ url值。或者,如果您计划在一个控制器中修改$ url并再次访问它,则可能需要保留$ url。另一个控制器后来。无论哪种方式,您都需要将该类文件转换为服务。