2012-08-25 2 views
4

나는 레일을 처음 사용합니다.레일에있는 국제 서수

내 사이트는 영어와 프랑스어 두 가지 언어로 번역되어 있으며 번역을 위해 i18n을 사용하고 있습니다.

저는 ordinalize와 함께 i18n을 사용하고 싶습니다. 아무쪼록 도와주세요.

나는 아래 링크를 통해 갔다 그러나 어떤 성공

http://murfy.de/read/i18n-ordinalization

없어요

http://info.michael-simons.eu/2009/02/12/localizing-dates-and-time-with-rails-i18n-using-procs/

내가 따라야 할 정확한 어떤 단계를 안내하시기 바랍니다.

감사 선일

답변

4

저도 같은 문제에 직면하고 있었고, 난 너무, 당신이 제공 한 링크를 시도했다. 그러나 나는 그들도 일하게 할 수 없었다. 마지막으로, 나는 해결책 밖으로 생각 :

1) app/helpers/application_helper.rb

def ordinalize_number number 
    case I18n.locale 
    when :en 
     return number.ordinalize 
    when :'zh-TW' 
     return number 
    else 
     return number 
    end 
end 

2에 새 도우미 메서드를 추가)이 경우에 config/locales/*.yml (en.yml 업데이트)를

end_quarter: 'End The %{order} Quarter' 

3) 귀하의 기본 i18n 방법으로 도우미 메서드를 사용하십시오.

<%= t('end_quarter', :order => ordinalize_number(3)) %> 
# it will show "End The 3rd Quarter" properly 

최상의 솔루션인지는 모르겠지만 환경 설정을 변경하지 않고도 작동합니다.

+0

도우미를 사용했는데 .. 다른 방법 .. 더러운 방법 –