1
我有以下型號一個Rails 5.1應用:順序(2)
class Game < ApplicationRecord
has_and_belongs_to_many :players
end
class Player < ApplicationRecord
has_and_belongs_to_many :games
end
我看到在測試過程中的Game
小號方法之一以下行爲(使用標準夾具+ MINITEST):
def foo
puts "players.first: #{players.first.id}, #{players.first.name}"
puts "players.second: #{players.second.id}, #{players.second.name}"
puts "players.last: #{players.last.id}, #{players.last.name}"
players.each_cons(2) do |pair|
puts "<<each_cons>> one: #{pair.first.id}, #{pair.first.name} - two: #{pair.second.id}, #{pair.second.name}"
end
end
輸出:
players.first: 101088061, julia
players.second: 132733334, clara
players.last: 931424614, felix
<<each_cons>> one: 931424614, felix - two: 132733334, clara
<<each_cons>> one: 132733334, clara - two: 101088061, julia
我希望它可以這樣調用julia, clara
,然後clara, felix
。這個逆序的原因是什麼?