Установить глобальные параметры Symfony2

Я использую Symfony2. Для моего приложения мне нужно установить некоторые глобальные параметры для этого.

Я определил параметр в моем файле parameters.ini как:

#app/config/parameters.ini

[parameters]
    mailer_auth_mode="login"
    user_thumbnail_path="images/user/thumbnail"

Я могу получить доступ к этому в своем контроллере с помощью следующего кода:

$this->container->getParameter('user_thumbnail_path');

Поскольку я использую FOSUserBundle, и у меня есть переопределение класса ProfileHandler, и в этом классе я хочу использовать параметр, но не знаю, как это сделать.


person Muhammad Umair    schedule 19.04.2012    source источник
comment
В общем, вы захотите сделать свой класс обработчика сервисом, а затем ввести в него параметры. Начните здесь: symfony.com/doc/current/book/service_container.html   -  person Cerad    schedule 19.04.2012
comment
спасибо Cerad, но это решение не подходит в моем случае, как я понимаю, потому что я новичок в symfony2... Я использую FOSUserBundle и переопределяю его класс обработчика, я хочу использовать этот параметр...   -  person Muhammad Umair    schedule 19.04.2012
comment
Попробуйте обновить свой вопрос и сделать его конкретным для FOSUserBundle. Я не пользуюсь пакетом, поэтому не могу дать вам точного ответа. Но многие другие люди используют пакет. В нынешнем виде вопрос слишком общий, чтобы кто-либо мог предложить больше, чем общее решение.   -  person Cerad    schedule 19.04.2012


Ответы (1)


Создайте свой собственный хендлер или расширяйте тот, который вы хотите.

Зарегистрируйте его как услугу.

my.handler:
    class: Acme\MyBundle\Form\Handler\MyHandler
    arguments: ...

Затем установите идентификатор службы в качестве обработчика формы, которую вы хотите обработать.

fos_user:
    ...
    registration:
        form:
           handler: my.handler
person qdelettre    schedule 10.10.2013