2016-09-02 2 views
0

У меня есть небольшая проблема. Когда я добавляю пользовательский домен к моему ресурсу для перевода, он не загружается.Ресурсы перевода symfony с пользовательским доменом не загружаются

Мой код работает (без пользовательского домена):

$app['translator'] = $app->share($app->extend('translator', function ($translator, $app) { 
    $translator->addLoader('yaml', new Symfony\Component\Translation\Loader\YamlFileLoader()); 

    $translator->addResource('yaml', __DIR__ . '/../views/backend/translator/translations/back-office.en_GB.yml', 'en_GB'); 
    $translator->addResource('yaml', __DIR__ . '/../views/backend/translator/translations/back-office.fr_FR.yml', 'fr_FR'); 

    return $translator; 
})); 

Мой код, который я хочу сделать, и не работает:

$app['translator'] = $app->share($app->extend('translator', function ($translator, $app) { 
    $translator->addLoader('yaml', new Symfony\Component\Translation\Loader\YamlFileLoader()); 

    $translator->addResource('yaml', __DIR__ . '/../views/backend/translator/translations/back-office.en_GB.yml', 'en_GB', 'back-office'); 
    $translator->addResource('yaml', __DIR__ . '/../views/backend/translator/translations/back-office.fr_FR.yml', 'fr_FR', 'back-office'); 

    return $translator; 
})); 

домена по умолчанию «сообщения», как я могу изменить его ?

С уважением

EDIT:

Я просто заметил, что он не загружает другие файлы ресурсов. Если я сначала добавлю пустой ресурс файла, а затем файл ресурсов перевода, перевод не появляется в моих файлах ветви, он печатает переменную.

$translator->addResource('yaml', __DIR__ . '/../views/backend/translator/translations/messages.en_GB.yml', 'en_GB'); 
    $translator->addResource('yaml', __DIR__ . '/../views/backend/translator/translations/messages.fr_FR.yml', 'fr_FR'); 
    $translator->addResource('yaml', __DIR__ . '/../views/backend/translator/translations/back-office.en_GB.yml', 'en_GB', 'back-office'); 
    $translator->addResource('yaml', __DIR__ . '/../views/backend/translator/translations/back-office.fr_FR.yml', 'fr_FR', 'back-office'); 

EDIT 2:

Я получаю это, я должен указать домен на каждой переменной в файле веточку или указать домен по умолчанию на каждом прута файлов:

{{ «label.name «| транс ({}, 'приложение')}} или {% trans_default_domain "приложение" %}

Это действительно не так легко управлять, когда у вас есть много файлов ...

+2

Что именно не работает? Добавьте пример использования перевода. –

+0

Ну, это не показывает перевод, просто напечатайте переменную. –

+0

Хорошо, я понимаю немного больше, я должен указать домен на каждом var в файле twig ... например {{'show.website' | trans ({}, 'back-office')}} Я жестко считаю, что простой транс поймает все файлы файлов переводов ... –

ответ

0

я получаю, я должен указать домен на каждом переменном в файле веточки или указать домен по умолчанию на каждом прут файлы:

{{ 'label.name'|trans({}, 'app') }} 

или

{% trans_default_domain "app" %} 

Это действительно не так легко управлять, когда у вас много файлов ...

Смежные вопросы