2

国際化を使用して、1つのフォームに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

クライアントがWebサイトの言語を選択できるようにするには、おそらく次のリンクから始めるのがよいでしょう:http: //guides.rubyonrails.org/i18n.html

選択ボックスから言語を選択するなど、ユーザーアクションでフォーム(Webサイトの残りの部分ではなく)を異なる言語で更新するだけの場合は、選択ボックスでajaxリスナーを使用できます。これには何かが必要になる場合があります。 「http://www.yourwebsite.com/:locale/form/new」のように、ajaxアクションで応答し、フォームを選択した言語に置き換えます(たとえば、:localeでは、選択したボックスの値を次のように渡します。言語)。

于 2012-12-07T09:44:00.460 に答える