2009-01-01から1年間の記事一覧

ActiveRecordクラスに動的にバリデーションコードを追加する

RailsWay 250ページあたりに出てくる話題として、ActiveRecordでレコードを読み出す時に動的にバリデーションコードを定義するという話題があり、場合によっては非常に便利だが、RailsWayのコードそのままだとちょっとアレでうまくいかないので、正しいコー…

Railsでの遅延トランザクションと並行性

経験上、楽観的ロックの場合はトランザクションを始める前に対象レコードをすべて読み込んでしまい、必要な処理を施し(カラムデータの変更など)、その後で、ActiveRecord::Base.transactionでトランザクションを開始し、レコードをまとめて保存する(save!を…