2012-07-03 11 views
10

Mam model, który nazywa się pojazdem.Tłumaczenie liczby mnogiej modelu

W moim tłumaczeniu model musi być: pojazdu => Fahrzeug pojazdy => Fahrzeuge

Próbowałem ustawić to w lokalizacjach plików, ale to nie działa:

activerecord: 
    models: 
     vehicle: Fahrzeug 
     vehicles: Fahrzeuge 

Odpowiedz

21

ActiveRecord najpierw tłumaczy nazwę modelu z wykorzystaniem I18n.translate domyślnie

:count => 1 

liczby mnogiej ten ciąg potem dosn't wiedzieć o modelu tłumaczeń.

Ale ludzka opcje akceptuje tak

Vehicle.model_name.human(:count => 2) 

załatwia sprawę wraz z liczbę mnogą tłumaczenia:

de: 
    activerecord: 
    models: 
     vehicle: 
     one: 'Fahrzeug' 
     other: 'Fahrzeuge' 
+1

Ponieważ różne języki mają różne zasady liczby mnogiej, spójrz na [tę tabelę] (http://unicode.org/repos/ cldr-tmp/trunk/diff/supplemental/language_plural_rules.html) może być interesującym. – martin

+0

, więc jakie będą używane arabskie osoby w nagłówku indeksu? 'few' lub' many'? Nie wiem Ale z powodu możesz użyć ': count => 8' dla' few' lub ': count => 70' dla wielu. Jeśli znasz kwotę, możesz przekazać ją do "człowieka". –

0

ty to krok: http://guides.rubyonrails.org/i18n.html#pluralization

activerecord: 
    models: 
     vehicle: 
     one: Fahrzeug 
     many: Fahrzeuge 

w szynach 4 wydaje się być zmieniona z many do other

en: 
    activerecord: 
    models: 
     user: 
     one: Dude 
     other: Dudes 
+0

jakoś wciąż nie przekłada pojazdów „Fahrzeugs” – Mark

+0

jedyna rzecz, że mogę myśleć jest plik "inflections.rb", ale nie sądzę, że pomogłoby to ... – phoet

-1

Czy próbowałeś other zamiast many? To przynajmniej dla mnie zadziałało. Jestem na Railsach 3.2.3.

Powiązane problemy