true_readonlyable
既存のmemberテーブルをRailsアプリから読むんだけど、共有の大事な大事なテーブルなので間違っても更新したくなかった訳です。で、そういえば acts_as_readonlyable なんて素っ頓狂な名前のプラグインがあったなーと思い出しまして、ちょっと調べたんだけど、これ嘘じゃんね。いや、プラグインの名前が。
=== Usage r = Fruit.find(:first) # executes against the read_only db r.field = 'value' r.save! # executes against the read_write db
違うんだよ、read_only dbが駄目とかread_write dbならいいとかじゃなくて、そもそも一切更新したくないんだよ。
ってことで本当の readonlyable 作った。
# vendor/plugins/true_readonlyable/lib/true_readonlyable.rb class ActiveRecord::Base class <<self def true_readonlyable before_save {raise ActiveRecord::RecordNotSaved.new('read only')} end end end
・・・これはないな。
$ ./script/destroy plugin true_readonlyable rm vendor/plugins/true_readonlyable/test/test_helper.rb rm vendor/plugins/true_readonlyable/test/true_readonlyable_test.rb rm vendor/plugins/true_readonlyable/tasks/true_readonlyable_tasks.rake rm vendor/plugins/true_readonlyable/lib/true_readonlyable.rb :