如何检查当前区域设置是否等于字符串

ser*_*erg 9 ruby symbols ruby-on-rails internationalization ruby-on-rails-3

我正在尝试确定是否在我的Web应用程序上显示SpanishEnglish按钮.

<% if I18n.locale == 'es' %>
  <a href="<%= set_english_path %>" class="thin">English</a>
<% else %>
  <a href="<%= set_spanish_path %>" class="thin">Spanish</a>
<% end %>
Run Code Online (Sandbox Code Playgroud)

if条件总是失败,西班牙按钮总是显示.

RubyMine在检查时(调试期间)显示:

在此输入图像描述

那么为什么比较失败呢?

Yev*_*yev 26

在搜索/比较/设置区域设置时,您应该使用符号而不是字符串.尝试:

<% if I18n.locale == :es %>
Run Code Online (Sandbox Code Playgroud)

有关I18n的文档,请访问http://guides.rubyonrails.org/i18n.html