如何检索数据库中的第二个,第三个..条目。我不想使用rails生成的自动递增id。
当我从数据库中删除条目时,ID会继续增加。
所以我的数据库会有
id : 210 (Even thought it's currently the first value)
id : 211 (Even thought it's currently the second value)
我知道“Phone.first”将返回第一个如何获得第二个。
子问题 -
Destroy_all / delete_all -
只删除项目,我是否可以从数据库中删除所有条目,并使数据库ID从一个开始而不删除表。当我遇到问题时。
答案 0 :(得分:21)
假设你想要第四个用户:
@users = User.limit(4)
@fourth_user = @users[3]
关于你的第二个问题,destroy_all
应该可以解决问题,因为它会触发所有回调。请务必在您的人际关系中添加:dependent => :destroy
。
答案 1 :(得分:10)
你需要的是
#n=2,3,4 etc
.limit(1).offset(n)
答案 2 :(得分:8)
Model.second
已添加到Rails 4.1.8。所以你可以在等于或大于它的Rails版本上使用它。
.third
,.fourth
和.fifth
也被添加到ActiveRecord::FinderMethods
。