次のコードを検討してください。
class Sheet
has_many :songs
end
class Song
belongs_to :sheet
end
sheet = Sheet.find(1)
sheet.songs << Song.find(5)
sheet.songs << Song.find(10)
sheet.songs << Song.find(8)
ここでの問題は、以下のコードを実行すると、そのシートの曲のリストが返されますが、(5,10,8) で追加した順序と同じではないことです。それは実際に によって注文された曲を提供してくれますname
。
songs = Sheet.find(1).songs
曲の最初の順序を維持するにはどうすればよいですか?