1

当用户切换到阿拉伯语界面时,我想将默认数字从英语更改为阿拉伯语。

13 => ١٣

89 => ٨٩

解决这个问题的最佳方法是什么?

4

3 回答 3

1

我添加了辅助模块

ARABIC_NUMBERS = %w(٠ ١ ٢ ٣ ٤ ٥ ٦ ٧ ٨ ٩)
def ta numbers
  numbers = numbers.to_s if numbers.is_a? Integer
  results = numbers.chars.map { |char| ARABIC_NUMBERS[char.to_i] }.join
end
于 2012-11-12T13:00:38.517 回答
0

检查此代码:https ://github.com/gdotdesign/rails-arabic-convert/blob/master/app/helpers/convert_helper.rb 。

它是一个将英文数字转换为阿拉伯数字的助手。

于 2012-08-03T18:01:19.463 回答
0

我想出了这个快速的解决方案。我在 ApplicationHelper 中添加了以下功能

def tn(num)
  num.to_s.split(//).map{|r|t("n"+r)}.join
end

然后为每个数字添加从 0 到 9 的翻译,config/locals/ar.yml格式如下:

n1: "١"
n2: "٢"
n3: "٣"
.
.
.

现在我们可以调用新的数字翻译函数,通过tn(13)١٣以阿拉伯语本地化输出

于 2012-08-03T18:53:02.057 回答