2011-09-08 52 views
1

我正在爲Web應用程序(Rails)使用I18N,部分應用程序需要顯示包含所選語言環境的字母表的選擇。我的問題是,有沒有辦法讓Ruby來處理這個問題,還是需要通過Rails提供的I18N API?本地化Ruby字母表

這是我使用產生選擇的選項的數組:

'A'.upto('Z').to_a.concat(0.upto(9).to_a) 

我需要翻譯的是俄羅斯,中國&阿拉伯語。

回答

1

你需要創建一個HTML select,所有字母的特定字母?

這在理論上適用於俄語和阿拉伯語,但中國人沒有「字母表」。

書寫系統包含thousands of characters

1

我想你需要自己實現這個。 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