@Qixing

Как передать значение из сервиса в twig.global.var в symfony2?

Хочу установить глобальный массив для манипулирования курсами валют во всех шаблонах twig.

Конфигурация: config.yml
twig:
    #...
    globals:
            rate: '@crbr.currency_rate'

Регистрируем сервис
crbr.currency_rate:
        class: CrbrBundle\Service\CurrencyRate
        arguments:
            - '@redcode.currency.rate.converter'


Сам севрис
<?php
namespace CrbrBundle\Service;

use Doctrine\ORM\EntityManager;

class CurrencyRate
{
    public function __construct($currency)
    {
        $this->$converter = $currency;
    }
    public function getRate()
    {
        $rate = array();
        $currencyDiff = $this->container->getParameter('currencyDiff');
        $converter = $this->get('redcode.currency.rate.converter');
        $rate['usd'] = $this->convert('USD', 'RUB', 1) + $currencyDiff;
        $rate['jpy'] = $this->convert('JPY', 'RUB', 1) * 100 + $currencyDiff;
        return $rate;
    }

}


Собственно вопрос как в моем конфиге установки
globals:
rate: Правильно передать значение rate вызвав мой сервис с нужным экшеном?
  • Вопрос задан
  • 2442 просмотра
Решения вопроса 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Хочу установить глобальный массив для манипулирования курсами валют во всех шаблонах twig.


А может не хотите?

В любом случае лучше посмотрите в сторону экстеншенов для twig и регистрации своей функции.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы