Web サイトの URL を含むモデルで次のコードを実行しています。「www.」を取り除く必要があります。すべての URL から取得し、レコードをデータベースに保存します。ただし、変更された URL が単純に保存されないレコードがあります。コンソール経由で .sub ルーチンをテストしたところ、文字列が変更されましたが、変更が保存されませんでした。
def strip
b = Sites.all
b.each do |t|
t.url.sub!(/www./, '')
t.save
end
end
また、上記のコードを Rails コンソールで直接実行したところ、出力は次のようになりました (ここでも、何も保存されませんでした)。
(0.0ms) commit transaction
(0.0ms) begin transaction
(0.0ms) commit transaction
(0.0ms) begin transaction
(0.0ms) commit transaction
(0.0ms) begin transaction
(0.0ms) commit transaction
(0.0ms) begin transaction
(0.0ms) commit transaction