【问题标题】:Ruby on Rails: Keep user input after submitting search formRuby on Rails:提交搜索表单后保留用户输入
【发布时间】:2012-08-01 15:15:57
【问题描述】:

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

    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>

这里我的状态下拉框将用户输入保留在文本框中,但我的开始日期下拉菜单没有。任何方式解决这个问题。谢谢

【问题讨论】:

    标签: ruby-on-rails ruby search drop-down-menu


    【解决方案1】:

    :selected => params[:status] 是您的状态下拉框保留该值的原因 您需要将 :selected=>params[:start_date_dd] 添加到标签中

    【讨论】:

    • 是否有理由在同一个表单中混合选择标签和选择助手?你还在用控制器中的参数哈希做任何事情吗?
    • 我可以将您定向到我今天发布的另一个question。我所有的代码都在那里。也许你能帮助我?再次感谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-01
    • 1970-01-01
    相关资源
    最近更新 更多