1

Rails 3.0.9のスロベニア語翻訳で使用t('errors', :count => 2)し、スロベニア語の特殊な複数形である「2ナパキ」を返したいのですが。

私はlocales/sl.ymlを作成し、次のコードを持っています:

sl:
  error:
    one: %{count} napaka
    two: %{count} napaki
    other: %{count} napak

しかし、これはうまくいかないようです。

4

1 に答える 1

1

必ず翻訳をconfig/locales/sl.ymlに入れてください。また、ファイルconfig / locales / plugins.rbを作成し、その中に次のコードを配置する必要があります。

# More rules in this file: https://github.com/svenfuchs/i18n/blob/master/test/test_data/locales/plurals.rb
I18n::Backend::Simple.send(:include, I18n::Backend::Pluralization)
{
  :'sl' => { :i18n => { :plural => { :rule => lambda { |n| [1].include?(n % 100) && ![11].include?(n % 100) ? :one : [2].include?(n % 100) && ![12].include?(n % 100) ? :two : [3, 4].include?(n % 100) && ![13, 14].include?(n % 100) ? :few : :other }}}}
}

application.rbで、デフォルトのロケールを設定していることを確認してください。

class Application < Rails::Application
  ...
  config.i18n.default_locale = :sl
  ...
end

これらの変更を行った後は、必ずサーバーを再起動してください。それに加えて、3、4、...のような数字:one, :two, :otherもあります。:few

あなたはまた、あなたが求めることを正確に行うこの要点を見ることができます。

于 2011-08-04T10:00:15.950 に答える