<DAY111>マイグレーションファイルにファイルを追加するには?
学習状況
●学習日数 111日
●学習時間(本日)9.5時間
●累計学習時間 534.0時間
●一日あたりの平均学習時間 4.80時間
UPされたマイグレーションファイルをうっかり消してしまった場合
初歩的だが、少し困ったなので、アウトプットする。
rake db:migrate:status
にて状況を確認すると、マイグレーションファイルはUPされているが、
NODATEの状態であった。
マイグレーションファイルをdownの状態にさせて削除するにはどうするか確認した。
手順1 ダミーのマイグレーションファイルを生成する。
UPされているマイグレーションファイルのナンバーを確認。
ナンバーに応じてファイル名を記入
'20190517143914_tmp.rb'
ファイルには空の内容を記載する
class Tmp < ActiveReocrd::Migration def cange end end
これをすると、ファイルを認識する事ができる。
手順2 version指定してdownさせる
指定してdownさせると手違いがない。
bundle exec rakedb:migrate:down VERSION=20190517143914
外部キーを追加する手順
migrateファイルを作成
rails g migrate AddColumnHogeId
外部キーを追加する時に、オプションはセット。idは加えないがポイント
class AddColumnHogeId < ActiveReocrd::Migration[5.2] def change add_reference :TableName, :gaibukey, foreign_key: true end end
親要素が削除された子要素もひもづき削除するオプション
validates設定時に使用する。
belongs_to :hoge, dependent: :destory