Как перевести метки в пакете администрирования Sonata
Я использую Symfony 2.3 с пакетом администрирования Sonata. Я знаю, что могу перевести метку следующим образом:
->add('shortDescription', null, array('label'=>'shortDescriptionTranslated'))
Но это возможно только с помощью метода "Configureformfields", а не для полей DataGrid и ListFields.
Можете ли вы предоставить мне полный пример перевода меток глобальным способом? Я посмотрел здесь ( Метки в пакете администратора Sonata), но я понятия не имею, что писать в файле xliff.
Спасибо!
2 answers
Ознакомились ли вы с документацией по переводу с веб-сайта проекта Sonata: http://www.sonata-project.org/bundles/admin/master/doc/reference/translation.html ?
Вы можете установить глобальный каталог для каждого администратора, по умолчанию будет "сообщения". В зависимости от стратегии перевода исходный ключ будет другим, если вы получите ключ, вы можете перевести соответствующую метку как любой другой перевод из платформы Symfony с помощью файлов xliff или yaml.
Это работает точно так же:
protected function configureDatagridFilters(DatagridMapper $datagridMapper)
{
$datagridMapper
->add('id', null, array('label' => 'ID'))
->add('username', null, array('label' => 'Логин'))
;
}
protected function configureListFields(ListMapper $listMapper)
{
$listMapper
->addIdentifier('id', null, array('label' => 'ID'))
->addIdentifier('username', null, array('label' => 'Логин'))
;
}
Вы можете увидеть результат здесь: http://joxi.ru/V57lUdg5CbCqHxR9UwY
Переопределение файла xliff
дает вам перевод стандартных элементов пользовательского интерфейса, а не меток сущностей.