我正在爲Web應用程序(Rails)使用I18N,部分應用程序需要顯示包含所選語言環境的字母表的選擇。我的問題是,有沒有辦法讓Ruby來處理這個問題,還是需要通過Rails提供的I18N API?本地化Ruby字母表
這是我使用產生選擇的選項的數組:
'A'.upto('Z').to_a.concat(0.upto(9).to_a)
我需要翻譯的是俄羅斯,中國&阿拉伯語。
我正在爲Web應用程序(Rails)使用I18N,部分應用程序需要顯示包含所選語言環境的字母表的選擇。我的問題是,有沒有辦法讓Ruby來處理這個問題,還是需要通過Rails提供的I18N API?本地化Ruby字母表
這是我使用產生選擇的選項的數組:
'A'.upto('Z').to_a.concat(0.upto(9).to_a)
我需要翻譯的是俄羅斯,中國&阿拉伯語。
我想你需要自己實現這個。 Afaik Rails i18n插件不提供此信息。
一個很好的解決方案是創建你自己的Range。 來自文檔的示例:
class Xs # represent a string of 'x's
include Comparable
attr :length
def initialize(n)
@length = n
end
def succ
Xs.new(@length + 1)
end
def <=>(other)
@length <=> other.length
end
def to_s
sprintf "%2d #{inspect}", @length
end
def inspect
'x' * @length
end
end
r = Xs.new(3)..Xs.new(6) #=> xxx..xxxxxx
r.to_a #=> [xxx, xxxx, xxxxx, xxxxxx]
r.member?(Xs.new(5)) #=> true