rails:3484
From: naopontan <naopontan@g...>
Date: Fri, 1 Oct 2010 14:35:04 +0900
Subject: [rails:3484] habtm で追加した順序は保障されるか?
こんにちは。 User と Entry が has_and_belongs_to_many(habtm)で多対多の関係です。 この場合、 @entry.users << @taro @entry.users << @jiro の順番は保障されるのでしょうか? class Entry < ActiveRecord::Base has_and_belongs_to_many :users, :order => "id ASC", :uniq => true end class User < ActiveRecord::Base has_and_belongs_to_many :entries end 勝手に保障されると思っていて、逆転現象の不具合が出たので 「:order => "id ASC"」がバグだ!って思ったんですけど、 以下のテストを書いてみたら、:order を指定してもしなくてもテストが通ってしまいます。 あれ?何で?って感じです。 def test_my_group_order entry = entries(:entry1) entry.users.clear entry.users << users(:taro) entry.users << users(:jiro) assert_equal [users(:taro), users(:jiro)], entry.users entry.users.clear entry.users << users(:jiro) entry.users << users(:taro) assert_equal [users(:jiro), users(:taro)], entry.users end この辺りのご助言頂ければ幸いです。 -- ML: rails@r... 使い方: http://QuickML.com/
-> 3484 2010-10-01 07:35 [naopontan@g... ] habtm で追加した順序は保障されるか? 3486 2010-10-01 08:06 ┗[andymatsubara@g... ] 3487 2010-10-02 03:45 ┗[naopontan@g... ]