0

如何使用 select_tag 更改语言环境?

    <%= form_tag ({:action => "set_locale"}) do %>
        <%= select_tag "select_lang", options_from_collection_for_select(@languages, "two_letter_code", "name") %>
        <%= submit_tag("set language") %>
    <% end %>

在我的 applicationController 我有一个 set_locale 方法:

def set_locale
    I18n.locale = params[:locale] if params.include?('locale') && !Language.where(:two_letter_code => params[:locale]).empty?
end

但它不起作用...

谢谢你。

4

1 回答 1

0

我认为您的问题是参数是字符串(“en”)而不是符号(:en)。params[:locale].to_sym 可能会有所帮助。

于 2013-01-11T15:06:23.507 回答