1

Rails2.3を使用して配列のテキストフィールドのセットを生成しようとしています。コントローラ(モデルの一部ではありません)に配列があり、エントリごとにテキストフィールドを作成したいと思います。配列は次のようなものです。

@ages = [1, 3, 7] # defaults

次に、ビューに値1、3、および7の3つのテキストフィールドを生成し、送信時に配列にユーザーの値を入力します。

私はグーグルとここでたくさんのものを見つけました、しかし私にとってうまくいくように思われたものはどれもありませんでした。Railsではこれは簡単だと確信しています...

4

1 に答える 1

10

Railsはコレクションをシリアル化できるため、これが簡単になります。

ビューで「field[]」のように入力に名前を付けると、次のようになります。

<% @ages.each do |age| %>
  <%= text_field_tag 'ages[]', age %>
<% end %>

次に、送信時にコントローラーのすべての「年齢」にアクセスできます。

@ages = params[:ages]  # ['1', '3', '7']
于 2011-08-09T06:33:53.713 に答える