Rails 使用本地化日期格式的查询

Rails where query with localization date format

如何获得具有特定 I18n 语言环境的 ActiveRecord。

好像我想做的那样:

users = User.where(name: "John"), locale: :es

但是当此 return 将采用 :es 语言环境格式时。

你必须在语言环境之前设置,然后使用I18n.localize,包装你的数据作为参数:

举个例子:

User.last.created_at
# Sun, 15 Apr 2018 04:20:05 UTC +00:00

正在设置语言环境:

I18n.locale = :es
I18n.localize(User.last.created_at)
# "Dom, 15 Abr 2018 04:20:05 +0000"

I18n.localize 可以缩写为 I18n.l,在视图中工作时,您可以简单地使用 l.

您可能还想查看 Rails Internationalization (I18n) API guide