如何获取特定语言的数据库条目

How to get a database entry with a specific language

在 Rails 4.0.0 上为 Ruby 使用 I18n 我需要一个英语数据库条目,即使我目前在本地 => "de"。密码是

= link_to tag.name, :controller => "images", :action => t("#{tag.name}")

对于 :action 我需要英文标签名称,无论我目前使用哪种语言,但 link_to 后面的德语 tag.name(对于link)。所以像:

= link_to tag.name, :controller => "images", :action => t("#{tag.name}", :locale => :en)

但这不起作用。

我的模型 Tag 已经有两种语言,但是当我当前在 "de" 语言环境时,它总是给我 Tag 的德文名称作为操作,但与当前语言环境无关,我总是需要英语入口。

class Tag < ActiveRecord::Base
  attr_accessible
    :name, :id, :content

  translates :name, :content
end

看来您使用的是Globalizegem。它具有 with_locale() 方法,您可以使用该方法为特定代码段设置独立的语言环境。

= link_to tag.name, controller: "images", action: Globalize.with_locale(:en) { tag.name }

Rails I18n也有​​同样的方法。这也行得通:

= link_to tag.name, controller: "images", action: I18n.with_locale(:en) { tag.name }