Подтвердить что ты не робот

Rails i18n и маршруты в javascript

Иногда было бы очень удобно иметь файлы локализации Rails в JavaScript. То же самое верно для помощников маршрутов.

Я нашел эти два плагина, которые именно это делают:

Мои вопросы:

  • Есть ли какие-либо другие плагины/драгоценные камни, делающие похожие вещи, подобные двум выше?
  • Какой правильный подход в Rails? Метатег? Дополнительные атрибуты данных?

Спасибо за любой вклад!

4b9b3361

Ответ 1

Я использую первый плагин, который вы указали (i18n-js), и рекомендую его высоко. Он делает именно то, что вы просите - сделать локализацию доступной для javascript - с очень небольшим количеством суеты.

В своей основе он выполняет две функции:

  • автоматически генерирует файл messages.js из ваших файлов локализации
  • предоставляет API Javascript, очень похожий на API Rails I18n.

Вы добавляете тег <script> для messages.js, а затем в другие .js файлы вы можете просто написать I18n.t('some.i18n.path', {interpolation_key: "value", ...}), который вернет переведенную строку.

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

Я не уверен, что вы получаете с мета-тегами или атрибутами данных. Мне не нужны были для интернационализации.