2017-07-26 16 views
-3

我目前有:如何使搜索日期字段在導軌上找到數據庫項目

def index 
    @sheets = Sheet.where(user_id: current_user) 
end 

而且我想它,使之:

if params[:search] 
    @sheets = Sheet.search(params[:search]).order("created_at DESC") 
    else 
    @sheets = Sheet.all.order("created_at DESC") 
end 

但我想在球場上我使用下拉日曆查看日期字段以方便用戶搜索工作表,我該怎麼做?我已經看過:http://www.rymcmahon.com/articles/2

+0

'search'功能不存在,你必須使用'where'條款 – djothefou

+0

會Sheets.where(created_at:搜索)工作 –

回答

0

params[:search]單一日期? 使用TimeZone.parse將日期字符串解析爲實際日期。

如果是這樣,你where code是罰款有輕微的修改:

Sheets.where(created_at: Time.zone.parse(params[:search])) 

但這只是字面上回報片誰的created_at時間是完全一樣的輸入的時間(到秒)。那麼,它真的是params[:start_date] & params[:end_date]?至少這樣你可以返回所有工作表,其中created_at是一個日期範圍內:

Sheets.where(created_at: Time.zone.parse(params[:start_date])..Time.zone.parse(params[:end_date]))