0

新しいユーザーの招待に取り組んでいます。UI では、J クエリを使用してテキスト ボックスを追加し、ユーザーが多くの名前と対応する電子メール ID を入力できるようにします。送信時に、コントローラー内のすべての名前と電子メール (複数の値) にアクセスしたいだけです。今、私はただ助けが必要です。対応する名前と eamil で値のハッシュを作成する方法はありますか? {"name1" => "eamil1","name2" => "eamil2" } ...

Plsはこれで私を助けてください。

4

2 に答える 2

0

'fields_for'タグを使用して、名前の後に[]を渡すと、以下に示すように作成されたフォームがハッシュ値の配列を送信します。

<%= fields_for :"names[]", User.new do |builder| %>
    <%=builder.text_field :name%>
    <%=builder.text_field :name%>
    <%=builder.text_field :name%>
    <%=builder.submit%> 
<% end %>

上記のコードで生成されたフォームを送信すると、paramsハッシュにはnames = [{"name" => "..."}、{"name" => "..."}、{"name"=>が含まれます。 "..."}]

于 2013-01-29T09:02:20.457 に答える
0

Javascript コードを使用して、次のような HTML 入力を生成する必要があります。

<input type="text" name="invited_persons[0][name]" />
<input type="email" name="invited_persons[0][email]" />

<input type="text" name="invited_persons[1][name]" />
<input type="email" name="invited_persons[1][email]" />

スコープとして使用される数値のおかげで、生成paramsされるものは次のようになります。

{
  'invited_persons' => {
    '0' => {
      'name' => 'foo',
      'email' => 'foo@foo.foo'
    },
    '1' => {
      'name' => 'bar',
      'email' => 'bar@bar.bar'
    }
  }
}
于 2013-01-29T08:29:13.010 に答える