Rails 2.2 плагин перевода / гем

Я ищу систему локализации для использования в приложении rails 2.2.2, которым я управляю. Я думаю, что видел один раньше, который делает именно то, что я хочу, но мне не удается найти его с помощью Google.

Система, которую я имею в виду, работает следующим образом: любая модель ActiveRecord (или, возможно, список указанных моделей, перечисленных, например, в файле конфигурации) может иметь связанную с ней запись перевода, которая задает языковой стандарт и новые значения для одного или больше полей в этой записи для указанной локали. Обратите внимание, что это отдельная проблема, решаемая i18n: это способ задания специфичных для локали данных, а не специфичных для локали имен полей или аналогичных строк "системного уровня".

Например, скажем, мой сайт предоставляет уроки музыки. В Великобритании (локаль по умолчанию) музыкальные ноты, которые в последний раз "бьют", называются "четвертными" *, тогда как в США они называются "четвертными нотами". Итак, у меня может быть урок, который имеет эти данные:

#a Lesson object, with an entry in the "lessons" table in the db
id: 1234
name: "My Lesson"
description: "In this lesson you'll learn about crotchets."

и я хочу, чтобы эта запись перевода была связана с ней:

id: 1
translatable_type: "Lesson"
translatable_id: 1234
locale: "US"
data: {:description => "In this lesson you'll learn about quarter notes"}

Теперь, когда я просматриваю урок, система проверяет текущую локаль и проверяет, есть ли какие-либо данные, специфичные для текущей локали, для этого урока, видит, что она есть (описание), и отображает ее вместо стандартного описания.

Кто-нибудь видел такую ​​систему?

спасибо макс

PS - в этом примере я выполнил простую подстановку строк "капризов" на "четвертные ноты", что может заставить собеседника подумать, что мне просто нужен какой-то простой перевод подстановки строк. Но это не так - некоторые специфичные для США имена / описания будут сильно отличаться от их аналогов в Великобритании и поэтому требуют полностью настраиваемого имени, описания и т. Д.

* это может быть не совсем музыкально верно во всех случаях, но это выходит за рамки этого вопроса:)

1 ответ

Решение

Я думаю, что Globalize2 может быть тем, что вам нужно для решений для данных, специфичных для локали (я успешно использовал Globalize3 для моих приложений на Rails 3.2). Если нет, то, надеюсь, в разделе альтернативных решений в файле README Github repo от Globalize2 будет что-то еще, что будет работать для вас с Rails 2.2. Удачи!

Другие вопросы по тегам