2012-08-31 86 views

回答

4

這是寫在Rails guides,第2.2.1:

Client.where("created_at >= :start_date AND created_at <= :end_date", {:start_date => params[:start_date], :end_date => params[:end_date]}) 
+0

我需要在這個行動中看到什麼。它需要像下拉式日曆一樣? – user1579627

+0

我也得到了這個錯誤未定義的局部變量或方法'params'爲# user1579627

+0

用您的實際字段名稱替換參數 – apneadiving

0

您可以編寫類似下面的條件,

User.where( 「created_at> =日期和結束日期< =?」,FROM_DATE ,end_date),其中
from_date,end_date - >是你所需的from_date和end_date存儲在變量中

希望它有幫助!

0

您可以使用範圍進行此類搜索。例如:

User.where(registred_at: from_field..to_field)

0

首先設置您的PARAMS中的form_tag搜索

= form_tag foo_path(@foo), :method => :get do 
    = text_field_tag :start_date, params[:start_date] 
    = text_field_tag :end_date, params[:end_date] 
    = submit_tag "Search", :class => "btn btn-primary" 

並且最重要的是設置你的定義您的PARAMS在控制器中,如果您的搜索是在指數比

def index 
    @foos = Foo.all 
    if params[:start_date].present? 
    start_date = Date.parse(params[:start_date]) 
    @foos = @foos.where("foo.foo_date >= ?", start_date) 
    end 
    if params[:end_date].present? 
    start_date = Date.parse(params[:end_date]) 
    @foos = @foos.where("foo.foo_date >= ?", end_date) 
    end 
end