hinokiyoの手順書

自分のためにも手順書チックなものを残していければなと思っています。

Rails5.2 での外部キーの書き方の手順

動機

integer型のidが上限に達したらどうなるんだ?という疑問

手順

そもそもRails5.1からidの型がinteger(4byte)からbigint(8byte)になったようですね。
ただし、注意点があります。
いままで(5.1より前)のようにmigrationファイルに

      t.integer :user_id, null: false

なんて書いてると、userテーブルのid型はbigintなのにintegerで参照する事になってしまいます。
下記のように書きましょう。これでuser_idの型はbigintになります。

      t.references :user, null: false, foreign_key: true