2

我需要使用国际化为单个表单设置两种语言。

这是建议的表单页面

<%= semantic_form_for @detail do |f| %>
    <%= f.inputs do %>
    <%= f.input :name %>
    <%= f.input :dob  %> 
    <%= f.input :gender, :as => :radio, :label => "Gender", :collection => [["Male", 'male'], ["Female", 'female']] %>  
  <% end %>
  <%= f.actions do %>
    <%= f.action :submit, :as => :input %>
  <% end %>
<% end %>

这是 wk.yml 文件

wk: 
formtastic:
    labels:
      detail:
        dob: "Data of birtha"
        name: "Youre Nama"
        gender: "Gendera""

这是 en.yml 文件

en: 
  formtastic:
    labels:
      detail:
        dob: "Date of Birth"
        name: "Your Name"
        gender: "gender"

我在 formtastic.rb 初始化程序中添加了 Formtastic::SemanticFormBuilder.i18n_lookups_by_default = true 。

我成功使用了 en.yml。

我需要从“en”切换到“wk”和虎钳。

如何通过下拉框实现它?

4

1 回答 1

2

这与 formstatic 无关,而是与您的 rails 代码有关。

为了切换到 wk,您所要做的就是

http://guides.rubyonrails.org/i18n.html

I18n.locale = :wk

为了让您的客户为网站选择他的语言,可能从以下链接开始:http: //guides.rubyonrails.org/i18n.html

如果您只想在用户操作中以不同语言更新表单(而不是网站的其余部分),例如从选择框中选择语言,您可以在选择框上使用 ajax 侦听器,这可能需要一些东西像“http://www.yourwebsite.com/:locale/form/new”,它将以 ajax 动作回答,并用所选语言替换您的表单(等等:locale,您将传递选择框的值语言)。

于 2012-12-07T09:44:00.460 回答