私はすでに少しグーグルで検索しましたが、私の問題に対する満足のいく答えはないようです。
文字列型の列を持つテーブルがあります。次の移行を実行したい:
class ChangeColumnToBoolean < ActiveRecord::Migration
def up
change_column :users, :smoking, :boolean
end
end
これを実行すると、次のエラーが表示されます
PG::Error: ERROR: column "smoking" cannot be cast automatically to type boolean
HINT: Specify a USING expression to perform the conversion.
: ALTER TABLE "users" ALTER COLUMN "smoking" TYPE boolean
純粋な SQL を使用してこの移行を実行できることはわかっていますが、Rails で実行できればさらに良いでしょう。私はRailsコードを調べましたが、そのような可能性はないようですが、誰かが方法を知っているのでしょうか?
私は興味がありません: - 純粋な SQL - 列の削除 - 別の列の作成、データの変換、元の削除、名前の変更