2010-04-19 2 views
0

Мой вопрос прост. Могу ли я добавить один из ударовrails add: подскажите поля form_tag?

:prompt => "Any" 
:include_blank => true 

к форме в form_tag.

Вот пример. Я хотел бы добавить: пригласить поля select_tag: condition и select_tag: category, и у меня возникли проблемы.

<ul id="homepage_searchbar"> 
<% form_tag junklists_path, :method => :get do %> 
    <li> 
    <%= image_tag('search_icon.png', :id => 'main_search_icon') %> 
    </li> 
    <li> 
    <%= text_field_tag :search, "I'm looking for junk called...", :id => "main_field" %> 
    </li> 
    <li> 
     <%= select_tag :condition, options_for_select(Condition.all.collect{|condition| [condition.name, condition.id]}) %> 
    </li> 
    <li> 
     <%= select_tag :category, options_for_select(nested_set_options(Category) {|i| "#{'-' * i.level} #{i.name}"})%> 
    </li> 
    <li> 
    <%= submit_tag "Go!", :name => 'main_submit', :id => "main_submit" %> 
    </li> 
<% end %> 
</div> 

Если я не могу сделать это так, как я хочу, как я могу добавить поле в верхней части полого выбора, который имеет текст «Любые», но не имеет никакого значения, когда форма была отправлена?

Заранее благодарен!

ответ

2

Посмотрите на документацию для options_for_select. Вы, в конечном счете, просто передаете массивы массивов, чтобы вы могли добавить все, что хотите, в верхней части списка.

options_for_select([["Any", "-"]] + your_method_for_generating_your_options_list) 
+0

спасибо! я смотрел в form_tag docs и form_for docs, поскольку я написал это с помощью: prompt для form_for, но не думал, что нужно сделать это через options_for_select>. <. Я ценю помощь! – jim

Смежные вопросы