换句话说,我为每个fb应用程序提供了不同的包,并希望根据所使用的包加载app_id和app secret。
我也在使用FOSFacebook Bundle
我的config.yml:
parameters:
# facebook
my_app_id: test
my_app_secret: test
fos_facebook:
file: %kernel.root_dir%/../vendor/facebook/src/base_facebook.php
alias: facebook
app_id: %my_app_id%
secret: %my_app_secret%
cookie: true
尝试做:
$this->container->setParameter("my_app_id", "99999999999");
给了我“不可能在冻结的ParameterBag上调用set()。”错误。
而这:http://groups.google.com/group/symfony2/browse_thread/thread/6f09df702f656874 我说我必须首先明确地让getParameter工作或使用另一个捆绑包。
所以问题是,这样做的相对简单且耗时少的方法是什么?
答案 0 :(得分:1)
我认为一旦构建了依赖注入容器,参数就会被冻结。这意味着您无法直接更改控制器中的参数。
您可能要做的是创建一个将设置参数的包扩展。在捆绑扩展中,可以将参数设置为已更改。请检查此cookbook section以了解如何创建捆绑扩展。
此外,您可以查看此cookbook recipe,其中显示了如何从外部来源设置参数。
祝你的用例好运。
的问候,
马特