ER図って分かりやすいですけど、作るの面倒ですよね。
ちょっと時間を置いたプロジェクトだと「これって本当に最新版だっけ?」となることも。
そこでER図を自動生成を試してみました。
前提
- homebrewがインストールされている。
- railsプロジェクトで試す。
homebrewでgraphvizのインストール
まずは、graphvizをインストールします。
graphvizはDOT言語という言語でグラフ構造を記述できるパッケージだそうです。
https://ja.wikipedia.org/wiki/Graphviz
$ brew install graphviz
homebrew久しぶりに使ったら、うまくいきませんでした。
brew doctor で確認したら、warning ~ cellarで引っかかっていたので、
brew unlinkで無事解消できました。
gemfileに追加
group :local do gem 'rails-erd' end
githubリンク
https://github.com/voormedia/rails-erd
コマンド入力
bundle exec erd --inheritance --direct --attributes=foreign_keys,content --filetype=dot
erd.dotファイルが生成される。
dotファイルを閲覧できる形式に変更
erd.dotのあるディレクトリで以下のコマンドを入力
- pdf出力の場合
dot -Tpdf erd.dot > erd.pdf
- png出力の場合
dot -Tpng erd.dot > erd.png
思ったよりいい感じに出ました。嬉しいです。
そのうち、できたらdockerを立ち上げたときに自動で作れるようにしたいです。