SOでこの質問を見つけましたが、実際には役に立ちませんでした。
そこで、隠しフィールド タグを介して配列を渡したいと思います。現在、私のコードは次のとおりです。
<%= hidden_field_tag "article_ids", @articles.map(&:id) %>
ID を文字列として渡すため、これは明らかに機能しません。
どうすればいいのですか?
SOでこの質問を見つけましたが、実際には役に立ちませんでした。
そこで、隠しフィールド タグを介して配列を渡したいと思います。現在、私のコードは次のとおりです。
<%= hidden_field_tag "article_ids", @articles.map(&:id) %>
ID を文字列として渡すため、これは明らかに機能しません。
どうすればいいのですか?
こんにちは、もっと良い解決策があるかもしれませんが、試してみてください
<% @articles.map(&:id).each do |id| %>
<%= hidden_field_tag "article_ids[]", id %>
<% end %>
以下はRails 4.1.10で私のために働いた
<% @your_array.map().each do |array_element| %>
<%= hidden_field_tag "your_array[]", array_element %>
<% end %>
json との間で解析を試みることができます。
articles_list = @articles.map(&:id).to_json # gives u: [1,2,3,4,5]
# note that the result is a string instead of an array
article_ids = JSON.parse(articles_list)
または、カンマ区切りの文字列を使用することもできます。
articles_list = @articles.map(&:id).join(",") # gives u: 1,2,3,4,5
# note that this result is a string also
article_ids = articles_list.split(/,/).map(&:to_i)