gpt4 book ai didi

ruby-on-rails - 具有日期范围的思考狮身人面像

转载 作者:行者123 更新时间:2023-12-04 11:31:22 24 4
gpt4 key购买 nike

我正在为我的 rails 应用程序实现一个全文搜索 API,到目前为止,Thinking Sphinx 已经取得了巨大的成功。

我现在想实现日期范围搜索,并不断收到“范围错误值”错误。

这是 Controller 代码的一个片段,我对接下来要做什么有些困惑。

    @search_options = { :page => params[:page], :per_page => params[:per_page]||50 }

unless params[:since].blank?
# make sure date is in specified format - YYYY-MM-DD
d = nil
begin
d = DateTime.strptime(params[:since], '%Y-%m-%d')
rescue
raise ArgumentError, "Value for since parameter is not a valid date - please use format YYYY-MM-DD"
end
@search_options.merge!(:with => {:post_date => d..Time.now.utc})
end
logger.info @search_options
@posts = Post.search(params[:q], @search_options)

当我查看日志时,我看到这一点似乎暗示日期尚未转换为与 Time.now.utc 相同的时间格式。
withpost_date2010-05-25T00:00:00+00:00..Tue Jun 01 17:45:13 UTC 2010

有任何想法吗?基本上,我试图让 API 请求在“自”日期后传递,以查看某个日期之后的所有帖子。我指定日期应该是 YYYY-MM-DD 格式。

谢谢你的帮助。
克里斯

编辑:我只是将日期参数合并语句更改为此

@search_options.merge!(:with => {:post_date => d.to_date..DateTime.now})

现在我收到这个错误

2010 年 5 月 25 日星期二的未定义方法“to_i”:日期

所以显然还有一些东西没有设置正确......

最佳答案

让我们说 d = "2010-12-10":post_date => (d.to_time.to_i..Time.now.to_i)会把你带到那里。我刚刚在我的项目中做了这个,效果很好

关于ruby-on-rails - 具有日期范围的思考狮身人面像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2952106/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com