ActiveRecord::Errors, ActiveRecord::Validation をポーティング
こんな感じで定義できるようにした。
class DomainModel < CouchResource::Base string :title, :validates => [ :presense_of, [:length_of, {:maximum => 255}] ] end
これと同じ。
class DomainModel < CouchResource::Base string :title validates_presence_of :title validates_length_of :title, :maximum => 255 end
基本的には、active_record/validations.rb のソースをそのままこぴって、ソースを読みながら、ActiveRecord依存している部分を取り除く作業でした。
次は、active_record/connection.rb ですかね。コールバック関連はあまり興味がないので。。HTTP の connection pooling とか、HAクラスタとか、ロードバランスクラスタとか、おもしろいネタはたくさんあるんだけれど、どこまで実装するかなぁ。。。
WebJourney のドメインモデルを保存したいだけなのに、なんか主題が変わってきている気がするのは気のせい。