我有一个曲线的x,具有born_date,然后我想所有这些都或多或少的5年配置文件。
如果个人资料x有20年,我希望每个个人资料有15到25年的时间。
在这里,我需要一些日期计算,我真的不知道该怎么做。你有一些想法? ;)
我有一个曲线的x,具有born_date,然后我想所有这些都或多或少的5年配置文件。
如果个人资料x有20年,我希望每个个人资料有15到25年的时间。
在这里,我需要一些日期计算,我真的不知道该怎么做。你有一些想法? ;)
在Rails的日期的计算是很容易的,与您通过ActiveSupport::CoreExtensions::Numeric::Time
让你可以在与条件一个简单的查询任一方向的5年之内配置文件中的助手,使用一些最新的数学:
x = Profile.first
prof_five_years = Profile.find(:all,
:conditions => ['born_date > ? and born_date < ?',
x.born_date - 5.years,
x.born_date + 5.years])
选择P1 *从轮廓P1,曲线P2其中p1.born_date < = DATE_ADD(p2.born_date,间隔5年)和p1.born_date> = DATE_SUB(p2.born_date,间隔5年)和P1 .id = x.id
如果你不想那么X轮廓尝试
选择P1 *从轮廓P1,P2的个人资料,其中p1.born_date < = DATE_ADD(p2.born_date,间隔5年)和p1.born_date> = DATE_SUB(P2 .born_date,间隔5年)和p1.id = x.id和p2.id!= x.id
其中x.id是用户的个人资料,以配合
它似乎interessant你的方法,我会检查出来。不管怎么说,还是要谢谢你 ;) – 2010-04-07 13:13:25
我建议你也有看看searchlogic gem。 http://github.com/binarylogic/searchlogic
完美!谢谢,它的工作 – 2010-04-07 13:12:58