计算思考狮身人面像条件的日期

时间:2012-01-23 03:11:44

标签: ruby-on-rails sphinx thinking-sphinx

我目前正在使用rails 3.1,sphinx和思考sphinx作为我的搜索应用程序。

我的模型有两个字段,我将其定义为sphinx属性:

define_index do

  has availability_period # number of days
  has availability_date
end

我想在此可用日期进行搜索,因此我正在使用像这样定义的sphinx范围

# search by date e.g av_date = '01. Feb 2012'
# find items that are availabile for that date
sphinx_scope(:by_date){ |av_date|
  search_date = (Time.now-2.years)..av_date
  {
    :with => { :availability_date => search_date} 
  }  
}

但是,item有几天的availability_period,所以我想实际添加这几天的查询次数。

所以我们假设这样的事情:

item 1: {availability_date: '10. Jan 2012', availability_period: 14}
item 2: {availability_date: '10. Feb 2012', availability_period: 30}

现在我正在寻找'01之间的物品。 2011年1月' - '2012年2月30日'},我想只找到项目#1,而不是项目#2,因为10. 2月+ 30天给出10月3日,这超出了我的范围。

0 个答案:

没有答案