踏んでくださいアレ子様

Rails でとあるテーブルの主キーの型を String にしたくて変更方法を少し調べたんだけど
「主キーがオートナンバー型で定義することは必須」らしい。
推奨とかでなく必須!ほんま ActiveRecord さんは女王様やでえ。
今まで知らなかった僕に鞭打っていただきたい。

class CreateQueens < ActiveRecord::Migration
  def self.up
    create_table :queens do |t|
      t.column :string_id,  :string
      t.column :hyper_oshioki_time, :datetime
    end
    add_index :queens, :name, :unique => true
  end
  def self.down
    #僕は消す立場でなくむしろ消される側
  end
end

というわけで Migration するときにユニークインデックスをつけることで対処した。最適解ではないはず。アレ子さんへの依存をなくすのがいいのかもしれないですが、しかし。