我使用Ruby on Rails创建了一个阿拉伯语Web应用程序,如何将time_ago_in_words函数的结果转换为阿拉伯语?
还是我应该写自己的功能?
答案 0 :(得分:1)
如果您查看distance_of_time_in_words
方法的文档(在time_ago_in_words
的引擎下使用),您会看到,您可以通过scope
选项进行自定义翻译查找:
使用
scope
选项,您可以定义Rails的自定义范围 翻译。例如,您可以在语言环境中定义以下内容(例如en.yml)。
datetime: distance_in_words: short: about_x_hours: one: 'an hour' other: '%{count} hours'
请参阅github.com/svenfuchs/rails-i18n/blob/master/rails/locale/en.yml 更多例子。
然后会产生以下结果:
from_time = Time.now distance_of_time_in_words(from_time, from_time + 50.minutes, scope: 'datetime.distance_in_words.short') # => "an hour" distance_of_time_in_words(from_time, from_time + 3.hours, scope: 'datetime.distance_in_words.short') # => "3 hours"