获取rails中开始日期和结束日期之间存在的所有日期

时间:2014-07-05 14:16:56

标签: ruby-on-rails ruby-on-rails-3

获取所有日期的日期条件是什么?    它位于开始日期和结束日期之间。我正在使用此查询    但它并没有完全满足这些条件。

@festivals = @festivals.where(:event_group_start=>params[:event_group_start]..(params[:event_group_end])) if (params[:event_group_start] && params[:event_group_end]).present?

1 个答案:

答案 0 :(得分:0)

@festivals = @festivals.where(:event_group_start=>params[:event_group_start]..(params    [:event_group_end])) if (params[:event_group_start] && params[:event_group_end]).present?

您的查询选择event_group_start等于params [:event_group_start]等所有节日。如果您想搜索介于两者之间的内容,请使用此sintax

 @festivals = @festivals.where('event_group_start > ?', params[:event_group_start])
 @festivals = @festivals.where('event_group_end < ?', params[:event_group_end])

这也将检查你的params安全性并防止任何sql注入。不要使用它像

.where("event_group_end < #{params[:event_group_end]}") 

这不安全。