在rails中发布一个数组

dev*_*ter 0 ruby post ruby-on-rails

这个很难解释,但基本上我的控制器是构建的,并期望一个数组 params[:order_items],所以我尝试过这样:

<%= hidden_field_tag "order_items", @order[:order_items_ids] %>
Run Code Online (Sandbox Code Playgroud)

但我得到了连接的ID

<input id="gig_items" name="gig_items" type="hidden" value="2300124946">
Run Code Online (Sandbox Code Playgroud)

那么,我如何params使用html(没有js)在其中一个键中发送和数组?

Yun*_*i.W 5

您可以将其发布在由','连接的字符串中,例如:

<%= hidden_field_tag "order_items", @order[:order_items_ids].join(",") %>
Run Code Online (Sandbox Code Playgroud)

然后将其拆分到您的控制器中.但如果你真的想要它在数组中.你也可以这样做:

<%@order[:order_items_ids].each do |oid|%>
    <%= hidden_field_tag "order_items[]", oid %>
<%end%>
Run Code Online (Sandbox Code Playgroud)