ruby表单数据接收

时间:2014-01-23 18:43:54

标签: ruby forms params

盖伊 这只是ruby中的简单形式

<%= form_tag("/page/create", method: "get") do %>
<% 5.times do %>
<%= text_field_tag :Name,(params[:Name]), size: 10 %><br>
<% end %>
<%= submit_tag("send") %>
<% end%>

为什么在我的控制下@Name=params['Name']不能与我合作?

总是不给我任何东西?

2 个答案:

答案 0 :(得分:1)

您多次发布相同的参数。这导致空params['Name'],除了您填写最后一个输入字段。

大多数框架使用相同的名称丢弃多个参数,仅使用参数列表中的最后一个参数。

如果要将一组字段传递给控制器​​,请使用如下所示的尾部开合方括号命名字段:text_field_tag 'Name[]'。这使得Rails使用输入值的数组填充params['Name']

请注意,:Name[]不是Ruby中的有效符号,因此您必须使用String作为text_field_tag帮助程序的第一个参数。

答案 1 :(得分:0)

我想你在这里有一些事情发生了:

<%= text_field_tag :Name,(params[:Name]), size: 10 %><br>更改为<%= text_field_tag :Name, size: 10 %><br>可能是向前迈进的第一步。