在Rails中,可以使用form_with
方法来构建一个散列数组以传递给控制器。form_with
方法是Rails 5中引入的一个表单辅助方法,用于生成表单并处理表单提交。
下面是一个示例代码,展示了如何在视图中构建一个散列数组:
<%= form_with(url: your_controller_action_path, method: :post) do |form| %>
<% your_array.each do |item| %>
<%= form.fields_for "your_array[]", item do |f| %>
<%= f.text_field :attribute_name %>
<% end %>
<% end %>
<%= form.submit "Submit" %>
<% end %>
在上述代码中,form_with
方法用于生成一个表单,url
参数指定了表单提交的目标控制器动作的路径,method
参数指定了表单提交的HTTP方法。
your_array
是一个散列数组,通过each
方法遍历数组中的每个元素。在fields_for
块中,使用"your_array[]"
作为表单字段的名称,这样Rails会自动将表单字段的值组织为一个散列数组。
在fields_for
块中,可以使用各种表单辅助方法来生成表单字段,例如text_field
用于生成文本输入框。
最后,使用submit
方法生成一个提交按钮。
请注意,上述代码中的your_controller_action_path
需要替换为实际的控制器动作路径。
推荐的腾讯云相关产品:腾讯云云服务器(CVM),产品介绍链接地址:https://cloud.tencent.com/product/cvm
领取专属 10元无门槛券
手把手带您无忧上云