Ruby on rails 如何使用创建的_在创建日期范围
我正在尝试在Rails应用程序中获取过去30天内创建的纵断面图总数。下面的代码生成的结果为“0”,而预期结果为“1”(即我查看了一次配置文件)。我想知道我是不是把这个范围弄错了。Rails没有抛出错误Ruby on rails 如何使用创建的_在创建日期范围,ruby-on-rails,Ruby On Rails,我正在尝试在Rails应用程序中获取过去30天内创建的纵断面图总数。下面的代码生成的结果为“0”,而预期结果为“1”(即我查看了一次配置文件)。我想知道我是不是把这个范围弄错了。Rails没有抛出错误 @profileviews = Profileview.where({:user_id => @user.id, :created_at => (Date.today)..(Date.today - 30)}).count 注意,我希望它包含在计数中的profileview是今天创
@profileviews = Profileview.where({:user_id => @user.id, :created_at => (Date.today)..(Date.today - 30)}).count
注意,我希望它包含在计数中的profileview是今天创建的
创建于:“2013-05-31 14:43:55”
您的范围是向后的,需要从低到高:
:created_at => (Date.today - 30)..(Date.today)
使用某人已删除评论中的代码
:created_at=>((Date.today-30)…Date.today)
它仍然显示“0”。注意,我希望它包含在计数中的配置文件视图是今天创建的。在我发布答案后看到了这一点。您可以发布正在执行的查询吗?在末尾添加.to_-sql而不是.count将产生这种效果。to_-sql是一个巧妙的技巧:从“Profileview”中选择“Profileview”。*user_-id=56和(“Profileview”。“created_-at”介于'2013-05-01'和'2013-05-31'之间)
这是为Profileview创建的时间,它应该包括created_-at:“2013-05-31 14:43:55”
我在评论中将sql发布到OP。请注意,纵断面图(我希望包含在计数中)是今天创建的,可能只是一天中的某个时间问题?(在我以正确的顺序获得日期范围后)这是为纵断面图创建的时间,我希望它包含创建的时间:“2013-05-31 14:43:55”“
我可能只做Date.today.end_of_day使用时间。现在用代替日期。今天在范围的后半部分产生了差异(一旦我按正确的顺序得到它们)。谢谢你的帮助。