ar

DATE型のカラムを検索する

OracleのDATE型 >> member = Member.find(10000) "id" "members" => #<Member:0xb339510c @attributes={"name"=>"maiha", "arrived_at"=>#<Date: 4903089/2,0,2299161>, "id"=>10000, "presence"=>2, "created_at"=>#<Date: 4903089/2,0,2299161>}> >> member.arrived_at NoMethodError: private method `gsub!&#39; called f…</date:></date:></member:0xb339510c>

共通処理

モデル・・・ActiveRecord::Observerを継承したクラスに書く コントローラー・・・ApplicationControllerに書く ビュー・・・パーシャルとかApplicationHelperとか

ActiveRecordでOracleにつなぐ

ふーふー。やっとつながった。。 かなりめんどくさかった。 OracleClientをOUIで入れるのに失敗したのが痛かった。 ActiveRecordでOracleにつなぐには ruby-ociのインストールが前提。 http://rubyforge.org/frs/?group_id=256&release_id=6553 が、ruby-oci…

楽観的排他制御

http://api.rubyonrails.com/classes/ActiveRecord/Locking.htmllock_versionってカラムがテーブルになくても set_locking_column で設定できる。

楽観的排他制御

ActiveRecordで楽観的排他制御ってどー寸の可なーと思って調べたら。 テーブルにlock_versionってカラムがあるだけでOKらしい。 エラー発生時にStaleObjectError例外を吐くらしい。 rescueで受け取ってなんらか処理を定義できるらしい。 AR1.4で追加されたら…

acts_as_treeとacts_as_nested_set

再帰テーブルの表現に使うそうだ。。

ARを読んでみる3

require &#39;rubygems&#39; require_gem &#39;activerecord&#39; ActiveRecord::Base.establish_connection( :adapter => &#39;mysql&#39;, :host => &#39;localhost&#39;, :username => &#39;ypuser_d&#39;, :password => &#39;ror&#39;, :database => &#3…

ARを読んでみる2

接続するデータベースはMySQL。 ActiveRecord::Base.connection クラスメソッドconnectionが定義されてるのは active_record/connection_adapters/abstract/connection_specification.rb クラスメソッド:connection if @active_connection_name && (conn = …

ARを読もうとする試み establish_connection

お約束のestablish_connectionメソッドあたりの感想。 require &#39;rubygems&#39; require_gem &#39;activerecord&#39; ActiveRecord::Base.establish_connection( :adapter => &#39;mysql&#39;, :host => &#39;localhost&#39;, :username => &#39;rails&#3…

ARの構造をみてみる続き

自分でActiveRecord::BaseクラスやValidationsモジュールの簡易版を書いて 動かして、なんとなく分かってきた気がする。 ActiveRecord::BaseクラスでValidationsなどのmoduleをextendすると ValidationsのインスタンスメソッドはBaseクラスのクラスメソッド…

ARの定義 ちがうみたい

moduleをクラスメソッドにするにはextendすればよいみたいなので違うみたいだ。。

ARの定義

active_record.rb ActiveRecord::Base.class_eval include ... endactive_record.rbはこうなってます。 正直、ぱっと見何やってんのかわからなかった。 なぜ、下のような定義ではないのか。 class ActiveRecord::Base include ... end (そうぞう) クラスの…