Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails表单:如何在一个数组中存储两个文本字段_Ruby On Rails_Ruby On Rails 3.2 - Fatal编程技术网

Ruby on rails Rails表单:如何在一个数组中存储两个文本字段

Ruby on rails Rails表单:如何在一个数组中存储两个文本字段,ruby-on-rails,ruby-on-rails-3.2,Ruby On Rails,Ruby On Rails 3.2,在rails和许多在线教程中,我看到了这个例子 <div class="field"> <%= f.label :first_name %><br /> <%= f.text_field :first_name %> </div> <div class="field"> <%= f.label :last_name %><br /> <%= f.text_field :last_name

在rails和许多在线教程中,我看到了这个例子

<div class="field">
 <%= f.label :first_name %><br />
 <%= f.text_field :first_name %>
</div>
<div class="field">
 <%= f.label :last_name %><br />
 <%= f.text_field :last_name %>
</div>
有没有一种方法可以使用text_field或另一个form属性将两个输入存储在一个数组中,这样就可以得到如下结果:

"name"=>["foo", "bar"]
这不是首选的方法,但很想知道如何做到这一点

更新

在您的示例中,您将@user.first_name和.last_name作为值传递。我想的更多的是这样的:

 <div class="field">
  <%= f.label "First Name" %><br />
  <%= f.text_field :name %>
</div>
<div class="field">
 <%= f.label "Last Name" %><br />
 <%= f.text_field :name %>
</div>




如果没有
@user.first\u name
@user.name[0]

,则可以使用
文本字段标记来实现此目的。(文件:)

一个简单的例子如下所示:

text_field_tag 'name[]', @user.first_name
text_field_tag 'name[]', @user.last_name

这将在
name
参数下发送两个名称。您可以使用控制器中的
params[:name]
访问数组。

在控制器中,您可以像
name=[params[:first\u name]、params[:last\u name]]这样组合它们。
text_field_tag 'name[]', @user.first_name
text_field_tag 'name[]', @user.last_name