0

検索フォームで国の選択を使用したいのですが、contry_select_tagがform_tagで機能しないのではないかと思っていました。

フォローしてみました

<%= form_tag new_search_path  :html => {:multipart => true} do %>
   <%= text_field_tag :search_val%>
   <%= country_select_tag :country,[],["Germany", "France", "Austria", "Switzerland", "Netherlands", "Spain", "USA", "Russia"]%>

   <%= submit_tag "Search" %>
<%end%>

そして、次のエラーメッセージが表示されました

undefined method `country_select_tag' for #<#<Class:0xb6640828>:0xb5d06d5c>

をに変更しcountry_select_tagcountry_selectもエラーは発生しませんが、:countryパラメータはparams空のままです

!ruby/hash:ActiveSupport::HashWithIndifferentAccess
utf8: ✓
authenticity_token: GbmhaZAuSA3s88pTz+ZQJ6mxqZ1nrTpgSlSf40vttUY=
search_val: Test
country: 
commit: Search
html: !ruby/hash:ActiveSupport::HashWithIndifferentAccess
  multipart: 'true'
controller: searches
action: results

通常を使用しselect_tagてモデルから国で埋める必要がありますか、それとも別の解決策がありますか

4

1 に答える 1

0

国の部分を削除してみてください

  <%= form_tag new_search_path  :html => {:multipart => true} do %>
       <%= text_field_tag :search_val%>
       <%= select_tag :country,[],["Germany", "France", "Austria", "Switzerland", "Netherlands", "Spain", "USA", "Russia"]%>

       <%= submit_tag "Search" %>
    <%end%>

詳細はこちらhttp://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html

于 2013-03-18T12:48:17.440 に答える