eConti - программирование в вопросах и ответах

Локализованные страницы ошибок в Symfony2

Мы создаем приложение на Symfony2, локализованное на голландский и английский языки. Теперь я знаю, как настроить страницы ошибок Symfony, но не могу найти, как перевести страницы ошибок где угодно. Я пытался использовать фильтр trans в шаблонах ошибок, но, похоже, он не использует мой файл переводов.

Также я не могу найти возможность сделать несколько страниц ошибок, по одной для каждого языка, и локализовать их.

Кто-нибудь знает, возможно ли это вообще, я могу себе представить, что это сложно реализовать, потому что ошибка может быть вызвана ошибками перевода. Но если это так, мне бы хотелось получить подсказку или ссылку о том, как это сделать правильно.


  • Работает ли перевод строк (с использованием трансфильтра) в других шаблонах? 03.04.2013
  • Ну, я должен сказать, что перевод сообщений в шаблоне исключения для меня не имеет особого смысла, потому что исключение может быть выброшено в любом месте жизненного цикла обработки запроса. А также эта страница не должна быть частью обычного рабочего процесса, потому что она представляет собой сбой в обработке запроса, и обычно конечный пользователь не должен ее видеть. 03.04.2013
  • @gatisl Я думаю, что это имеет смысл, поскольку пользователь может увидеть ошибку 404, когда есть неверная внешняя ссылка. Это полностью вне нашего контроля. Даже когда появится ошибка 500, я хочу, чтобы пользователь мог понять, что происходит. Я не думаю, что вы были бы очень довольны сайтом с китайской ошибкой 404 или 500. 03.04.2013
  • @gatisl Translation запущен и работает для всех остальных шаблонов. Так что это работает, это просто страницы ошибок/исключений, которые я не могу перевести. 03.04.2013

Ответы:


1

Вы можете попробовать использовать глобальные переменные (app.request.locale или app.session.locale до Symfony 2.1), которые доступны в шаблонах.

{% if app.request.locale == 'nl' %}
    some error message
{% else %}
    error message in other language
{% endif %}
03.04.2013
Новые материалы

ИИ для общего блага, часть вторая
В нашем последнем блоге мы исследовали возможности ИИ для общего блага, указав на несколько инициатив по поиску действенных решений для продвижения справедливых и беспристрастных систем ИИ. По..

Время расцвета закончилось
Большую часть своей карьеры в индустрии программного обеспечения программисты работали с головой в песок. Успех в отрасли требует навыков презентации и обучения других. Ценность улучшенных..

Будущее сельского хозяйства: новый уровень производительности с современными технологиями
По мере роста населения мира растет и спрос на продукты питания. Фермеры сталкиваются с растущим давлением необходимости повышать урожайность и максимизировать производительность, манипулируя..

Состояние совместной фильтрации в 2022 году, часть 1
ResBeMF: Улучшение прогнозируемого охвата совместной фильтрации на основе классификации (arXiv) Автор: Анхель Гонсалес-Прието , Авраам Гутьеррес , Фернандо Ортега , Рауль Лара-Кабрера..

Зачем изучать PYTHON в 2022 году !
Python — востребованный, доступный язык программирования с активным, постоянно растущим сообществом пользователей. Для тех, кто хочет сменить профессию в мире технологий с помощью..

Решение капч с помощью Puppeteer
Это руководство предназначено для текстовых кодов, а не для reCAPTCHA Google (см. конец этого сообщения). Требования: Антикапча или любой другой сервис по разгадыванию капчи. Модуль..

7 встроенных библиотек Python, которые необходимо знать
7 встроенных библиотек Python, которые необходимо знать Стандартная библиотека Python значительно упрощает жизнь программистов, предоставляя широкий набор функций. Мы выбираем несколько..