RailsのActiverecordeで既についているNot null制約を外す
ActiverecordeでカラムにNotNull制約をつけてしまったけど、 やっぱり、NotNull制約を外したいなんて時ありますよね。
そんな時は、
change_column_null
マイグレーションファイルを下記の用になります。
class ChangeNotNulToUser < ActiveRecord::Migration[5.0] def up # Not Null制約を外す(NULLがOK) change_column_null :users, :name, true end def down # Not Null制約を付ける(NULLがNG) change_column_null :users, :name, false end end
change_column_null [テーブル名], [カラム名], [true|false]
要件が変わってしまここともあるので、仕方ないですが。 そもそも、こういう変更はなるべくしないようにしたいですね。 ちゃんと設計しなさいですね。
関連記事
- 作者: Rubyサポーターズ
- 出版社/メーカー: 技術評論社
- 発売日: 2017/05/17
- メディア: 大型本
- この商品を含むブログ (1件) を見る
参考サイト
change_column_null (ActiveRecord::ConnectionAdapters::SchemaStatements) - APIdock