test実行時のエラー
ArgumentError : wrong number of arguments (1 for 2)
引数の数がおかしいとのこと
参考(そんなに参考にならないけど):
http://nyon2.net/archives/2008/01/ruby-on-rails-1.html
ActiveRecord::StaleObjectError
Rails2.3.2に以降になって出るようになったみたい
lock versionを使ったロック機能によるもの
エラーを出しているのはいずれもこのロックに加えて、関連先のモデルに対して counter_cache と":dependent => :destroy"による連鎖削除を指定しているモデルのようです。
http://api.rubyonrails.org/classes/ActiveRecord/Locking/Optimistic.html
『Rails レシピブック』p.193「ロックを利用する」
[ActiveRecord]ロックについて
ロックについて理解するには、『Rails レシピブック』のp.193を読むのが早い
特に真ん中のコードのあたりがわかりやすいので、余裕があればブログにまとめておくのもあり
http://d.hatena.ne.jp/nabeta/20090316/1237217950
student_1 = Student.find(1) student_1.name = "名前(1)" puts student_1.description # => "古い内容" # 同じレコードを別のモデルオブジェクトとしてロードする student_2 = Student.find(1) student_2.description = "新しく更新した内容" student_2.save # 本文descriptionが更新されている puts Student.find(1).description # => "新しく更新した内容" # しかし、古いレコードに基づいたstudent_1を保存すると # 変更が上書きされてしまう student_1.save puts Student.find(1).description # => "古い内容"