トップ «前の日記(2012/05/23 (水) ) 最新 次の日記(2012/05/25 (金) )» 編集 RSS feed

HsbtDiary


2012/05/24 (木) [長年日記]

[rails] ActiveRecord で id 以外のカラムを primary_key にする奴

既に存在するDBをそのまま使う必要があったりする時の技。以下のような内容で Migration を作る。

 create_table :t_user, id: false do |t|
   t.primary_key :user_id
   t.string name
 end

だいたいデータ引っ越しとかでカラムも Rails 準拠にしちゃうことが多いんだけど、古いアプリと共有する必要があったりしてしょうが無いので、この辺でお茶を濁す。実際には create_table するわけにも行かないので、Production だと一度 scheme のバージョンだけ更新するような Migration を用意するのが良いのかな。