LoginSignup
11
10

More than 5 years have passed since last update.

ActiveRecord#all は、idの順番が保証されないので注意! ActiveRecord#order を使おう!

Posted at
User.all.each do |user|
  print "#{user.id}, "
end

ってやったらid順にちゃんと1, 2, 3, 4, 5, ...って表示されるかなと思ったら、そんなことは無かった。

順番を保証したいのなら、 ActiveRecord#order を使いましょう!

例えば今回みたいにid順に並べたいなら、

User.order('id').each do |user|
  print "#{user.id}, "
end

これで順番通りに出力されます!

逆順が良いなら、User.order('id desc').each do |user|...(以下略) ってやれば良いみたい。

11
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
10