マイグレーションの状態を調べるコマンド
rails db:migrate:status
マイグレーション実行するコマンド
rails db:migrate
マイグレーションの状態を一つ下げるコマンド(down)
rails db:rollback
「実際にpostsテーブルを作成する」という仕様がマイグレーションファイルに記載
create_table :posts do |t|
カラムの形を入力:カラム名、NOT NULL制約
カラム名を指定するとともに、そこにどんなデータが入るのかを示す「型」も指定する必要
t.型 :カラム名, null: false
カラムの型↓
<integer > 数値 金額、回数など
<string > 文字(短文)ユーザー名、メールアドレスなど
< text > 文字(長文)投稿文、説明文など
<boolean> 真か偽か、はい・いいえの選択、合格・不合格のフラグなど
<datetime> 日付と時刻 作成日時、更新日時など
NOT NULL制約は、テーブルの属性値にNULL(空の値)が入らないように制限する制約です。
外部キーの記述
t.references :カラム名, foreign_key: true
外部キーとは、関連する他のテーブルのレコードの主キーを値とする項目のことです。
そして、外部キー制約とは、外部キーのデータに対応するレコードが必ず存在することを保証する制約です。