在文件active_record/relation/finder_methods.rb
查看ActiveRecord源代码时,我发现了一些奇怪的东西(代码编辑为了简洁)
def second
find_nth(:second, offset_value ? offset_value + 1 : 1)
end
def second!
second or raise RecordNotFound
end
def third
find_nth(:third, offset_value ? offset_value + 2 : 2)
end
def third!
third or raise RecordNotFound
end
def fourth
find_nth(:fourth, offset_value ? offset_value + 3 : 3)
end
def fourth!
fourth or raise RecordNotFound
end
def fifth
find_nth(:fifth, offset_value ? offset_value + 4 : 4)
end
def fifth!
fifth or raise RecordNotFound
end
def forty_two
find_nth(:forty_two, offset_value ? offset_value + 41 : 41)
end
def forty_two!
forty_two or raise RecordNotFound
end
我能理解第一种和最后一种方法,但是第二种,第三种,第四种,所以没有多大意义。此外,从第五名到第四十二名的记录也有所增加。您可以继续编写糖方法来选择特定位置的记录。
这有什么具体原因吗?
答案 0 :(得分:2)
42 being revealed as the answer to life, the universe and everything
中The Hitchhiker's Guide to the Galaxy的科幻小说参考任何时候都可以选择一个不太大的仲裁号码,很多科幻爱好者选择42