记住表单标签输入值

时间:2011-07-20 01:08:14

标签: ruby-on-rails

我正在尝试创建一个用户选择日期和来源的过滤器表单。问题是在单击提交按钮后,在新页面中我看到输入值为空。有没有办法让表格记住它的价值?感谢。

<%= form_tag products_path, :method => 'get' do %>

<%= text_field_tag :from %>
<%= text_field_tag :to %>

<% Source.all.each do |source| %>
 <%= check_box_tag "sources[]", source.id %>
 <%= source.name %><br />
<% end %>

<%= submit_tag "Submit", :name => nil %>

<% end %>

控制器

def index

 @from = params[:from] ? params[:from].to_datetime : (Time.now-3.day)
 @to = params[:to] ? params[:to].to_datetime : (Time.now)
 @sources = params[:sources] ? params[:sources] : 1..6

 @products = Product.where(:source_id => @sources, :created_at => @from.beginning_of_day..@to.end_of_day)

end  

1 个答案:

答案 0 :(得分:2)

你不能使用这些标签中的值和选中的选项吗?这是一个例子:

<%= form_tag products_path, :method => 'get' do %>

<%= text_field_tag :from, @from %>
<%= text_field_tag :to, @to %>

<% Source.all.each do |source| %>
 <%= check_box_tag "sources[]", source.id, @sources.include?( source.id ) %>
 <%= source.name %><br />
<% end %>

<%= submit_tag "Submit", :name => nil %>

<% end %>