2012-08-03 79 views
1

快速的问题。提交搜索时,搜索完成后,我的一些字段会将用户输入保存在文本字段或下拉菜单中,但对于其他字段,它将恢复为默认选项。我如何让他们保存用户的选择。Ruby on Rails:提交搜索表单后保持用户输入

Start date: 
<%= select_tag "start_date_dd", options_for_select({ 
    "Select a period" => "", 
     "3 days ago" => DateTime.now.to_date - 3.days, # = 259_200 sec. 
     "1 week ago" => DateTime.now.to_date - 1.week, # = 604_800 sec. 
     "1 month ago" => DateTime.now.to_date - 1.month, # = 2_592_000 sec. 
     "6 months ago" => DateTime.now.to_date - 6.months, # = 15_552_000 sec. 
     "1 year ago" => DateTime.now.to_date - 1.year, # = 31_557_600 sec. 
    }, :selected=>params[:start_date_dd])%></br> 



Status : 

<%= select(@projects, :status, Project.all.map {|p| [p.status]}.uniq, :prompt => "-Any-", :selected => params[:status]) %></br> 

在这里,我的状态下拉框保留用户在文本框中的输入,但我的开始日期下拉菜单没有。任何解决方法。由于

回答

3

:选择=> PARAMS [:状态]就是为什么你的状态下拉框保持 你需要添加值:选择=> PARAMS [:start_date_dd]加入标签

+0

作品三江源!我没有移动支架 – Jazz 2012-08-03 14:52:57

+0

有没有一个原因你混合选择标签和选择助手在相同的形式?你也在做什么与控制器中的参数散列? – 2012-08-03 14:55:52

+0

我可以引导你到我的其他问题(http://stackoverflow.com/questions/11796225/ruby-on-rails-search-form-multiple-search-fields-including-dates-date-picker)我发布今天。我的所有代码都在那里。也许你可以帮助我?再次感谢 – Jazz 2012-08-03 15:00:43