0

Ruby onRails3.2の使用。定義された配列に基づいて複数の隠しフィールドタグを作成しようとしています。以下は私のコードです:

# shop.rb
...
ADDRESS_COMPONENTS = ['lat', 'lng', 'name']
...

# shops_helper.rb
module ShopsHelper
  def address_components_hidden_fields
    Shop::ADDRESS_COMPONENTS.each do |address_component|
      hidden_field_tag(address_component, "")
    end
  end
end

# _form.html.erb
<%= address_components_hidden_fields %>

出力は次のとおりです。

['lat', 'lng', 'name']

私は出力が次のようになることを期待しています:

<input type='hidden' name='lat' id='lat' value='' />
<input type='hidden' name='lng' id='lng' value='' />
<input type='hidden' name='name' id='name' value='' />

私は何を間違えましたか?

4

1 に答える 1

0

hidden_field_tagヘルパーを一緒に連結する必要があります。

module ShopsHelper
  def address_components_hidden_fields
    Shop::ADDRESS_COMPONENTS.map do |address_component|
      hidden_field_tag(address_component, "")
    end.join("\n")
  end
end

mapとの使用法に注意してくださいjoin

于 2012-10-02T16:42:19.937 に答える