我正在努力邀请新用户。在 UI 中,我使用 J 查询添加文本框,以允许用户输入许多名称和相应的电子邮件 ID。提交时,我只想访问控制器中的所有名称和电子邮件(多个值)。现在我只需要帮助。有没有一种方法可以创建具有相应名称的值的哈希值,并且 emil 一些类似的东西。{"name1" => "eamil1","name2" => "eamil2" } ...
请帮我解决这个问题。
我正在努力邀请新用户。在 UI 中,我使用 J 查询添加文本框,以允许用户输入许多名称和相应的电子邮件 ID。提交时,我只想访问控制器中的所有名称和电子邮件(多个值)。现在我只需要帮助。有没有一种方法可以创建具有相应名称的值的哈希值,并且 emil 一些类似的东西。{"name1" => "eamil1","name2" => "eamil2" } ...
请帮我解决这个问题。
使用 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'
}
}
}
您可以使用“fields_for”标签并传递一个名称,后跟 [],如下所示构建的表单将发送一个哈希值数组。
<%= fields_for :"names[]", User.new do |builder| %>
<%=builder.text_field :name%>
<%=builder.text_field :name%>
<%=builder.text_field :name%>
<%=builder.submit%>
<% end %>
在提交由上述代码生成的表单时,参数哈希将包含 names= [ {"name"=> "..."}, {"name" => "..."}, {"name" => “...”}]