はじめに
モデルのカラム情報をパッと確認したいときがあると思います。
私もこのGemを知るまでは毎回クライアントツールでカラム情報を確認するか、railsコンソールなどで確認をしており、手間がかかっていました。
このGemはモデルのカラム情報をModelのmigration時にモデルファイルにコメントとして書き出してくれるGemです。
使い方
Gemfileに以下を記述
gem 'annotate'
下記でインストール
group :development do
gem 'annotate'
end
以下のコマンドを実行し、annotateの設定ファイルを作成します。
bundle exec rails g annotate:install
lib/tasks/auto_annotate_models.rakeが作成されました。これで設定は完了です。
実際に使ってみる
下記のようなモデルを作成します。
rails g Model Prefecture name:string display_order:integer
migrationを実行。
rails db:migrate
確認すると、Prefectureモデルにスキーマ情報が自動で書き出されます。
# == Schema Information
#
# Table name: prefectures
#
# id :uuid not null, primary key
# display_order(並び順) :integer not null
# name(都道府県名) :string not null
# created_at :datetime not null
# updated_at :datetime not null
#
# Indexes
#
# index_prefectures_on_name_unique (name) UNIQUE
#
# 都道府県を管理するモデル
class Prefecture < ApplicationRecord
end
注意点
モデルファイルにコメントを書きたい場合はannotateのコメントと自分が書くコメントに一行空行をいれる必要があるようです。入れない場合は、migration時に毎回差分が出てしまうので手間がかかるのでご注意ください。
# == Schema Information
#
# Table name: prefectures
#
# id :uuid not null, primary key
# display_order(並び順) :integer not null
# name(都道府県名) :string not null
# created_at :datetime not null
# updated_at :datetime not null
#
# Indexes
#
# index_prefectures_on_name_unique (name) UNIQUE
#
# 上記のようにannnotateのコメントと自分のコメントの間に空行を入れる
# 都道府県を管理するモデル
class Prefecture < ApplicationRecord
end