是否有正确的方法让用户使用下拉列表对记录进行排序并选择例如:对自7天/ 30天/ 90天以来创建的记录进行排序? 将有不超过3或4个选择
而不是使用类似的东西:
@post = Post.where(created_at: 5.days.ago..Time.now)
哪个不让用户选择?
答案 0 :(得分:3)
决定列出天数的简单参数如何?
# some controller
def action
number_of = ([7, 30, 90].include?(params[:days].to_i) ? params[:days].to_i : 7)
@post = Post.where(created_at: number_of.days.ago..Time.now)
end
和一个天真的erb模板可能是这样的:
<%= form_tag "/controller/action", method: :get do %>
<%= select_tag(:days, options_for_select([['7 days ago', 7], ['30 days ago', 30], ['90 days ago', 90])) %>
<%= submit_tag("Filter") %>
<% end %>